8

Visual C++ プログラミングを行っており、CLR コンソール アプリケーションを作成しました。String 配列は、String[] ではなく、String ^ のように宣言する必要があることに気付きました。^ の用途は何ですか? そして、なぜ [] の代わりに使用されているのですか? また、この置換は CLR アプリケーションのみに限定されますか? コードとエラーの行は次のとおりです。

array<String[]>[] abc;

生成されたエラーは

エラー C2143: 構文エラー: ';' がありません 前 '['

エラー C2146: 構文エラー: ';' がありません 識別子「abc」の前

エラー C2065: 'abc': 宣言されていない識別子

4

1 に答える 1

12

曲折アクセント記号は、オブジェクトがマネージポインターであることを意味し、ガベージコレクターによって自動的に収集されます。これを暗黙的に行う必要はありません。C ++ / CLIで配列がどのように機能するかを理解するには、この記事を参照してください。

あなたの場合:

array<String^> ^abc;

そして、この置換はCLRアプリケーションのみに限定されていますか?

はい。

于 2012-05-14T06:03:28.660 に答える