如何将C++对象传递给C#类库
how to Pass C++ Object to C# Class Library
我正在做一个项目。其中C++代码引用了一个用C#编写的类库。我想把C++类的Object传递到C#类库。那么这可能吗?如果可能,请告诉我怎么做??否则,我将不得不向C#类库传递大约100个参数。
谨致问候,Vivek
您应该使用沼泽。
封送是在托管代码和非托管代码之间建立桥梁的过程;它是将消息从托管环境传递到非托管环境并反向传递的homer。它是CLR(公共语言运行时)提供的核心服务之一
命名空间System.Runtime.InteropServices.Marshal
在这里阅读一个关于沼泽的好博客
如果有此选项,您可以向项目中添加一个cpp文件,该文件将使用启用的CLR(托管C++)进行编译。从托管C++中,您可以调用C#类。你可以在这里找到例子:
管理C++以在C#和C++之间形成桥梁
如果您不想在调用本机应用程序中启用CLR,另一种选择是创建托管C++dll作为C++和.NET之间的桥梁。我使用了这个技巧,效果很好,但请注意,一旦加载了桥接dll库,CLR就会加载到内存中,您的进程就会被CLR"感染"。无论如何,你都会有这种效果。
相关文章:
- 为什么我不能将一个对象push_back到属于另一个类的对象向量中?
- 具有包含其他对象的类的对象创建顺序
- 如何在QT Creator上将QWidget声明为继承类的对象
- 将 exprtk 与自定义类的对象一起使用
- 如何在C++中正确引用来自不同类的类的对象?
- 如何处理从一个对象传递到另一个在C++中具有公共抽象类的对象的消息
- 为什么我不能在主函数之外定义一个类的对象(它继承了另一个类)?
- C++,创建新对象时类的对象更改
- 是否可以使用一个类来控制 C++ 中另一个类的对象?(阿杜伊诺)
- C++ 将子类的对象添加到父类的向量中
- 如何在不使用指针的情况下将派生类的对象作为参数传递给基类中的函数?
- 将另一个类的对象传递到当前类C++的构造函数中(不是成员初始化)
- 如何在 Win32 C++控制台应用程序中调用 UWP 类库
- 从自定义类获取对象向量中的 max 元素
- 将一个类的对象放在另一个类的数组中
- 在类定义中声明随机类的对象
- 使用 Lua 中的C++库对象
- 我们如何在c 中序列化或应对类的对象.是否有任何预定义的库
- Arduino:如何将其他类的对象用作我的库的参数
- 如何将C++对象传递给C#类库