我最近一直在玩Monotouch,决定它对我的项目是否有益。我需要Cocos2d并使用此处的绑定:https://github.com/mono/monotouch-bindings
到目前为止一切正常,但是我无法访问诸如GLuint之类的OpenGL类型。现在我从技术上知道这只是一个typedef和一个unsigned int。但我想知道导入这些类型的最佳方法是什么。我以为OpenTK可能有它们但是在导入之后我仍然找不到它们。我可以在项目中包含gl.h吗?或者这不是正确的方法?
答案 0 :(得分:2)
但我想知道导入这些类型的最佳方法是什么。
MonoTouch(如MonoMac和Xamarin.Mac)绑定避免重新定义.NET框架中已存在的类型。
因为许多类型(在不同的iOS框架中)被转换为等效的.NET类型。这使得值更容易在工具包之间共享代码。这很重要,因为C#是强类型的(并且类型转换会非常难看)。
现在我从技术上知道这只是一个typedef和一个unsigned int
大多数32位无符号整数类型将被转换为uint
(在C#或真正的System.UInt32
.NET中)。这就是你应该使用的(可能是绑定正在使用的)。
最值得注意的例外(对于整数类型)是将它们转换为enums
(但它们的基础类型仍然与原始类型相同)。