Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/324.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++;CLI列表并转换为矢量_C#_C++ Cli - Fatal编程技术网

将C#列表传递给C++;CLI列表并转换为矢量

将C#列表传递给C++;CLI列表并转换为矢量,c#,c++-cli,C#,C++ Cli,问题陈述:我希望将C#中的通用列表传递给C++/CLI,并能够将C++/CLI中的列表转换为std::vector 在C#我有课 public class EtchVect { public double XCoordinate { get; set; } public double YCoordinate { get; set; } public string LayerName { get; set; } } 那么实体模型应该是这样的: List<Etch

问题陈述:我希望将C#中的通用列表传递给C++/CLI,并能够将C++/CLI中的列表转换为std::vector

在C#我有课

public class EtchVect
{

    public double XCoordinate { get; set; }
    public double YCoordinate { get; set; }
    public string LayerName { get; set; }

}
那么实体模型应该是这样的:

List<EtchVect> etchVects = new List<EtchVect>();
etchVects.Add(new EtchVect() {LayerName = "C2", XCoordinate = 42.44, YCoordinate = 563.99});
List etchVects=new List();
Add(新的EtchVect(){LayerName=“C2”,XCoordinate=42.44,yccoordinate=563.99});
现在我想用C++/CLI接收列表 我应该用属性创建C++类吗? C++ CLI如何接受C语言中的列表? 我还希望在C++中有一个函数,将列表转换成一个STD::vector < /P>
我相信其他人已经做过很多次了,这对我来说只是一个陌生的领域(C++),我似乎在谷歌搜索和书籍搜索方面做得不够。

你的C++/CLI应用程序的公共界面是一份合同。本合同必须为双方所知。您不需要在两端定义类,而是使用一个程序集来定义它们,并在dll和程序中引用此程序集

由于您的C++/CLi dll可能已经在您的C#项目中被引用,请在公共接口中定义您的类,并从您的C#应用程序中使用它