Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/272.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/26.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# 如何转换vc++;(例如:IListPtr)指向std::list的指针?_C#_C++_Visual C++_Com - Fatal编程技术网

C# 如何转换vc++;(例如:IListPtr)指向std::list的指针?

C# 如何转换vc++;(例如:IListPtr)指向std::list的指针?,c#,c++,visual-c++,com,C#,C++,Visual C++,Com,在vc++中,我在进行类型转换时遇到了错误,有人能帮我将接口指针转换为列表变量吗 错误2440“类型转换”:无法从“\u bstr\u t”转换为“std::list” 编辑:我是这样做的: C# 但奇怪的是,有时它显示Disp不是ITest的成员,有时还显示类型转换错误。我已经验证了这一点,这只是因为当返回类型为List时,除非有一个非常好的快捷方式,否则我希望最好的方法是手动遍历CLI列表并将_back()推到std::List上 作为一个可能的示例,它可能看起来像什么(我不知道C++/CL

在vc++中,我在进行类型转换时遇到了错误,有人能帮我将接口指针转换为列表变量吗

错误2440“类型转换”:无法从“\u bstr\u t”转换为“std::list”

编辑:我是这样做的:

C#


但奇怪的是,有时它显示Disp不是ITest的成员,有时还显示类型转换错误。我已经验证了这一点,这只是因为当返回类型为List时,除非有一个非常好的快捷方式,否则我希望最好的方法是手动遍历CLI列表并将_back()推到std::List上

作为一个可能的示例,它可能看起来像什么(我不知道C++/CLI)

std::列表stdlist;
foreach(CLIlist中的T)
{
标准列表。推回(t);
}
您也可以使用

CList-vcslist;
标准:列表标准列表;
BOOST_FOREACH(CString s,vcList)
{
标准列表。推回(s);
}

首先,您需要向我们展示一些代码。其次,我们查看您的代码并给您提供建议。漂亮,嗯?
List<string> Disp() {
    List<string> li = new List<string>();
    li.Add("Ravi");
    li.Add("Raj");
    Return li;
}
void main() {
    HRESULT Hr=CoInitilize(NULL);
    ITestPtr p(__uuid("DemoClass");
    std::list l=(std::list)p->Disp();
}
std::list<T> stdlist;
foreach(T t in CLIlist)
{
    stdlist.push_back(t);
}
CList<CString> vcList;
std::list<T> stdList;
BOOST_FOREACH( CString s, vcList)
{
    stdList.push_back(s);
}