2017-05-14 60 views
0

我想通过创建绑定库来移植Xamarin iOS中的本机iOS库。我跟着this教程。但是我坚持建立解决方案。在C#中,int *和long *与objective-c等效的是什么?

我已经取代void*IntPtr因为Objective-C的等价物的void*是在C#IntPtr

任何帮助将不胜感激。提前致谢。

编辑:

int32_t*和在C#目标c的int64_t*更精确。

+0

int32_t *和int64_t *在c#中的objective-c更精确。 –

回答

2

答案取决于指针的用途:将变量传递给方法/函数,以便被调用者可以更改该值;或用于一般指针算术。

在第一种情况下,如果用于从an out parameter is required返回多个值。如果使用更通用并且参数用于读取&,则写入传递的变量,然后使用a ref parameter

在第二种情况下,您应该首先考虑重新设计您的算法不要使用指针,这更符合C#模型。如果您确实需要执行通用指针操作,那么您需要使用unsafe code,然后您可以使用完全相同的pointer types

相关问题