问题描述
我有一个包含2个项目的VS2013解决方案。一个是c ++ / cli dll。另一个是c#控制台应用程序。 dll包含一个类,其ctor采用'const WCHAR *'参数。在c#app中,我尝试创建该类的实例。我使用字符串文字作为ctor参数。构建错误是:
'MyLib.MyClass.Myclass(char *)'的最佳重载方法匹配有一些无效的参数
我有2个问题。
1.为什么VS2013认为参数是'char *'而不是'WCHAR *'?
2.如何将c#中的字符串传递给c ++?
这项工作的目的是查看使用c ++ / cli dll是否比使用dllimport / pinvoke更容易。
I have a VS2013 solution with 2 projects. One is a c++/cli dll. The other is a c# console app. The dll contains a class whose ctor takes a 'const WCHAR *' parameter. In the c# app I tried to create an instance of the class. I used a string literal for the ctor parameter. The build error is:
The best overloaded method match for 'MyLib.MyClass.Myclass(char*)' has some invalid arguments
I have 2 questions.
1. Why does VS2013 think the parameter is 'char*' instead of 'WCHAR*'?
2. How can I pass a string from c# to c++?
The purpose of this work is to see if using a c++/cli dll is easier than just using dllimport/pinvoke.
这篇关于如何将c#app中的字符串传递给c ++ cli dll中的类ctor?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!