[英]Calling a C++ Function that takes pointers from C#
我有一個C ++函數返回指針值:
fPosFirst( int &aId, char *aNname, char *aDirectory );
但我必須把它傳遞給C#。 我怎樣才能做到這一點?
您需要檢查P / Invoke (平台調用),這是一種從.Net /托管代碼(C#)調用本機代碼函數(C和C ++)的方法。
這是VB.NET語法,但您應該能夠輕松地將其轉換為C#。
Private Declare Ansi Sub fPosFirst lib "libraryname" (ByRef aId as Integer, byval aName as StringBuilder, byval aDirectory as StringBuilder)
現在如果aNname和aDirectory應該是const char *,你可以使用String而不是StringBuilder,它會變得更容易。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.