我在编译器中遇到错误c2440,但我无法弄清楚导致它的原因。
这是错误:
Error 2 error C2440: 'initializing' : cannot convert from 'int' to 'System::String ^' c:\users\***.****\documents\visual studio 2005\projects\cpas1\cpas1\Form1.h 1083
这是相关的代码:
String *strFilename = 0;
答案 0 :(得分:4)
托管类型,当在托管C ++中使用时,不使用星号(即*),相反我认为它们被称为跟踪句柄(即^)。 因此,您的陈述应如下所示:
String^ strFilename = nullptr;
答案 1 :(得分:2)
String *strFilename = "0";
不
String *strFilename = 0;
答案 2 :(得分:2)
System :: String是托管类。我相信您必须使用nullptr
关键字对其进行初始化。