繁体   English   中英

是否可以从C#中的本机C ++类创建变量?

[英]Is it possible to create a variable from native C++ class in C#?

有两个单独的项目正在尝试像这样进行通信:
我在C ++ CLI中有以下原生

public class Data{
    public:
    int x;
}

通过导入,我的意思是在我的C#项目中添加了对C ++ CLI项目的引用。
另一方面,我将此C ++ CLI项目导入到我的C#项目中,并且在C#中我想这样做:

Data k = new Data() //It's ok till here
int b = k.x; //The field x is not visible here !

有什么方法可以强制C#或C ++ CLI共享字段和方法?
编辑:也C#假定class data作为struct

我想您将需要使其成为ref class

public ref class Data{
    public:
    int x;
}

C#无法以您现在拥有的方式构造Data 它不在托管堆上。 ref将使其显示在托管堆上。 如果要使Data保持不受管理,则必须编写包装器。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM