Lesson4_Lua调用C#_调用C#拓展方法

-- 调用c#拓展方法的相关知识点

Lesson4=CS.Lesson4

//Lesson4声明如下

   public class Lesson4
{
    public string name = "lx";
    public void Speak(string str)
    {
        Debug.Log(str);
    }
    public static void Eat()
    {
        Debug.Log("吃东西");
    }
}

//拓展类声明如下

[XLua.LuaCallCSharp] //lua调用拓展方法,需要在静态类前加上特性,并且生成一次代码(Xlua编辑器里),并且建议在lua中会调用的c#的类都加上这个特性,会提高性能
 public static class Tools
 {
     public static void Move(this Lesson4 obj)
     {
      Debug.Log(obj.name + "移动");
     }
 }

Lesson4.Eat()--静态方法

local obj = Lesson4()

obj:Speak("hello world!") --成员方法

obj:Move() --拓展方法是一样的,但需要在拓展方法的静态类前加一个特性,并且生成代码

posted @ 2024-02-29 11:19  波奇型蠢驴  阅读(1)  评论(0)    收藏  举报