0

我对 C++/CLI 很陌生,我正在尝试将 System::String 转换为 System::Char 数组。

这是我到目前为止所拥有的:

private: System::Void modeToolStripMenuItem_Click(System::Object^  sender, System::EventArgs^  e) {
             Mode frmMode;
             if(frmMode.ShowDialog() == System::Windows::Forms::DialogResult::OK){
                 array <Char>^ load [] = gcnew array<Char>(txtbxName->Text->ToCharArray());
             }
         }

txtbxName 是表单内的文本框。据说,这应该可以工作,但我得到编译器错误:

error C2440: cannot convert from 'cli::array<Type> ^' to 'cli::array<Type> ^[]'

对于代码段的第四行。

4

2 回答 2

1

ToCharArray 已经为您提供了数组,您无需创建新数组。此外,正如其他回答者所指出的,您不需要指定[]创建数组变量,array<>就足够了。

array<Char>^ load = txtbxName->Text->ToCharArray();
于 2012-09-07T04:12:04.850 回答
0

您正试图将对数组 ( ) 的引用分配给对数组 ( array<Char> ^) 的引用的 C 样式数组array<Char> ^ []

您很可能打算改用此行:

array <Char>^ load = gcnew array<Char>(txtbxName->Text->ToCharArray());
于 2012-09-06T21:40:44.563 回答