私は C++ プログラマーで、以下の C++ コードを C# に変換する必要がある移行プロジェクトで立ち往生しています。同じことで助けが必要です。
unsigned short** varData = new unsigned short*[ndata]; //Say ndata is 10
for(int i=0; i<ndata; i++) varData[i] = new ushort[nwp];
前もって感謝します。
これにより、16 ビットの符号なし整数の 2D 配列が得られます。これはおそらく、C++ でポインターからポインターを使用して表現しようとしているものです。
int nData = 10;
int nwp = 3;
var varData = new UInt16[ nData, nwp ]; //varData is of type UInt16[,]
http://msdn.microsoft.com/en-us/library/2yd9wwz4(v=vs.71).aspx
私の理解が正しければ、unsigned short** を使用して ushort の 2 次元配列を格納します。C# では、次のように宣言できます。
ushort[,] array = new ushort[m, n];
ここで、m と n は次元です。
2D 配列ではなく、ジャグ配列を使用します。C++ と同じ結果が必要な場合。詳細については、 http://msdn.microsoft.com/en-us/library/2s05feca.aspxを参照してください。