2016-06-13 98 views
1

我试图调用C的方法,该方法使用一个字符串参数++类,但我有这个错误C#调用C++方法与字符串参数从包裹

错误CS0570“Wrapper.write(INT,?)”不被支持的语言

基本上,我有这样的代码,并将其与其他简单的方法作品,未经字符串对象

我读this但因为它们不是静态方法,我不能用它

任何想法?

在C#

Wrapper tb = new Lib.Wrapper(); 
tb.write(1, "tablas.txt"); 

在C++ Lib.h

private: 
    myCppClass* pMyCppClass; 
public: 
    Wrapper(); 
    int write(int id, String^ file); 

和C++ Lib.cpp

int Lib::Wrapper::write(int id, String^ file) 
{ 
    std::string aux= marshal_as <std::string> (file);  
    return pMyCppClass->write(id, aux); 
} 
+0

C++ lib是托管C++吗? – askeet

+0

是的,它是一个管理C++包装无限的C++类(myCppClass) – jgrdpy

+0

你可以给源码C++ Lib吗?我尝试创建它的情况,但所有工作都很好,用于管理C++。 – askeet

回答

0

我想通了库中没有更新,所以我删除DLL,清理解决方案,重新编译并添加在C#中的参考,它的工作原理