【发布时间】:2012-10-24 10:25:58
【问题描述】:
我在 C++/CLI 程序中有命令行参数,用 char* argv[] 表示。 我想将所有连接到 String^ 类的内容传输。
代码:
String ^masterString = "Commands=>";
for(int i=0; argv[i] != nullptr; ++i)
masterString += String(argv[i]);
但是,我发现上述方法在我使用 += 运算符的最后一条语句中不起作用。
这里的错误用法是什么?这里的错误是没有运算符匹配操作数。
还有其他更好的方法将内容从 char* 存储到 String^ 中吗?
【问题讨论】:
-
String是一个 Java 类,在 C++ 中它是std::string。你得到什么错误? -
当
i >= argc时你应该停下来 -
这是错误的
for(int i=0; argv[i] != nullptr; ++i)应该是for(int i=0; i < argc; ++i) -
我已经解决了这个问题,这绝对是 C++/CLI 而不是 C++。
-
我批准了你的编辑,m0nhawk
标签: string c++-cli string-concatenation char-pointer