C#
游蓝海
游戏编程
展开
-
unity tolua异常处理
C#、C、Lua分别有不同的异常处理机制,在跨语言函数调用的时候,必须要正确的处理异常,否则会导致堆栈错误、内存泄露、程序崩溃等问题。tolua对此做了非常全面的安全处理,值得我们去学习。如果我们要自己去做一些C层面的扩展,也必须要对这些底层原理熟记于心,才能避免各种诡异问题。本文作者游蓝海,未经许可禁止转载。C#调用Lua函数C#调用Lua函数的时候,必须使用lua_pcall接口进行调用...原创 2019-11-11 23:06:29 · 2022 阅读 · 0 评论 -
C#委托传递给C++函数指针
C#委托传递给C++函数指针原创作者游蓝海,转载请注明出处最近在Unity中集成一些C++库,跨语言交互的时候遇到了一个坑——不能直接将extern方法的参数声明为委托类型。因为将方法作为参数传递的时候,C#会自动创建一个临时的委托对象,然后将委托对象的指针传入C++。由于委托对象是临时的,在垃圾回收的时候回会被回收掉,导致C++端的函数指针就变成野指针了。因此,在传递委托参数的时候,需要自...原创 2018-10-24 23:37:05 · 4638 阅读 · 3 评论