0
我想通過創建綁定庫來移植Xamarin iOS中的本機iOS庫。我跟着this教程。但是我堅持建立解決方案。在C#中,int *和long *與objective-c等效的是什麼?
我已經取代void*
與IntPtr
因爲Objective-C的等價物的void*
是在C#IntPtr
。
任何幫助將不勝感激。提前致謝。
編輯:
int32_t*
和在C#目標c的int64_t*
更精確。
我想通過創建綁定庫來移植Xamarin iOS中的本機iOS庫。我跟着this教程。但是我堅持建立解決方案。在C#中,int *和long *與objective-c等效的是什麼?
我已經取代void*
與IntPtr
因爲Objective-C的等價物的void*
是在C#IntPtr
。
任何幫助將不勝感激。提前致謝。
編輯:
int32_t*
和在C#目標c的int64_t*
更精確。
答案取決於指針的用途:將變量傳遞給方法/函數,以便被調用者可以更改該值;或用於一般指針算術。
在第一種情況下,如果用於從an out
parameter is required返回多個值。如果使用更通用並且參數用於讀取&,則寫入傳遞的變量,然後使用a ref
parameter。
在第二種情況下,您應該首先考慮重新設計您的算法不要使用指針,這更符合C#模型。如果您確實需要執行通用指針操作,那麼您需要使用unsafe
code,然後您可以使用完全相同的pointer types。
int32_t *和int64_t *在c#中的objective-c更精確。 –