Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/163.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C#围绕本机C+的包装器+;班 我有三个本机C++类,具有这种关系: A <- B <- C A_C#_C++_Wrapper_Unmanaged - Fatal编程技术网

C#围绕本机C+的包装器+;班 我有三个本机C++类,具有这种关系: A <- B <- C A

C#围绕本机C+的包装器+;班 我有三个本机C++类,具有这种关系: A <- B <- C A,c#,c++,wrapper,unmanaged,C#,C++,Wrapper,Unmanaged,C可以继续在本机模式下直接调用B/A。您只需要处理从托管代码直接调用的类(ES)的表面积(即,E/PrimeIOP)。如果不公开A和B,则不需要,但不清楚如何将C++类封装到C?COM、P/Invoke或?您不需要“否”,但您需要创建一个DLL,以便在c#中对其进行P/Invoke,因为您不能在c#中使用.lib文件。@ZdeslavVojkovic通常人们认为他们想要一件事,事实上另一件会更好。我总是选择混合模式C++ + CLI来压扁C++类。@ StvutoWORKSUN抱歉我是用C包装来

C
可以继续在本机模式下直接调用
B
/
A
。您只需要处理从托管代码直接调用的类(ES)的表面积(即,E/PrimeIOP)。如果不公开A和B,则不需要,但不清楚如何将C++类封装到C?COM、P/Invoke或?您不需要“否”,但您需要创建一个DLL,以便在c#中对其进行P/Invoke,因为您不能在c#中使用.lib文件。@ZdeslavVojkovic通常人们认为他们想要一件事,事实上另一件会更好。我总是选择混合模式C++ + CLI来压扁C++类。@ StvutoWORKSUN抱歉我是用C包装来绕Pc/Cukes进行C++类的。我没有提到P/调用C++。C++的1。“静态库问题”意味着他不能将c++/cli或c API添加到库本身,因为在还没有dll之前,它对.net客户端仍然是无用的。就个人而言,我会选择COM接口(鸭子和封面)