编译器错误 C2440
我的编译器中出现错误 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;
I am getting error c2440 in my compiler but I cannot figure out what is causing it.
This is the error:
Error 2 error C2440: 'initializing' : cannot convert from 'int' to 'System::String ^' c:\users\***.****\documents\visual studio 2005\projects\cpas1\cpas1\Form1.h 1083
and this is the relevant code:
String *strFilename = 0;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
托管类型在托管 C++ 中使用时,不使用星号(即 *),相反,我相信它们被称为跟踪句柄(即 ^)。
因此,你的声明应该这样写:
Managed types, when used in Managed C++, don't use stars (i.e. *), instead I believe they are called tracking handles (i.e. ^).
As such your statement should be written like this:
不是
not
System::String 是一个托管类。我相信,您必须使用 nullptr 关键字来初始化它。
System::String is a managed class. You must use
nullptr
keyword, I believe, to initialize it.