1Dで管理される項目の配列を宣言して初期化したいとします。Managed C++での配列の初期化
それはC#のコードだった場合、私はこのようにそれを記述します。
VdbMethodInfo[] methods = new VdbMethodInfo[] {
new VdbMethodInfo("Method1"),
new VdbMethodInfo("Method2")
};
を私は(まあ、実際には、私が生成するプログラムを書いている)を書き込むために管理C++で同じことをしようとしています。.. 。
これまでのところ、私が持っている:
-
01:
- それはマネージドC++でのGCアレイの「アレイの初期化」構文があります私のコードジェネレータ
typedef array<VdbMethodInfo^, 1> MethodArray;
// How do I avoid pre-declaring the size of the array up front?
MethodArray^ methods = gcnew MethodArray(2);
methods[0] = gcnew VdbMethodInfo("Method1");
methods[1] = gcnew VdbMethodInfo("Method2");
をこの2つの問題があります。
のために不便である、アップフロント配列のサイズを宣言するために私を必要と
おかげで - 私が探していたまさに! –
何らかの理由でリフレクタ用のC++/CLIデコンパイラが宣言でgcnewと配列型を欠いていました。これを追加すると問題が解決しました。ありがとう。 http://www.sandpapersoftware.com/Main/Reflector.html – jpierson