可能重复:
std::string in C#?
How can I call a function of a C++ DLL that accepts a parameter of type stringstream from C#?
有没有办法从c ++ std:string转换为C#System.String?我正在从C ++ dll调用一个函数,它将std:string作为输入。有一种简单的方法可以做到这一点吗?
C#:
[DllImport(@"MyDLL.dll")]
[return:MarshalAs(UnmanagedType.I1)]
public static extern bool myFunction([In, Out]string input);
C ++:
extern "C" __declspec(dllexport) BOOL __stdcall myFunction(const std::string& input)
{
//Code is here
}