前回のエントリーの解説です。
[C++/CLI]このろくでもない、すばらしき言語
>なにがおきてるの?
次のソースの1行目と2行目はまったく同じ意味です。
array<int,2> ^arycli = {};
array<int,2> ^arycli = gcnew array<int,2>(0, 0xc0ffee);
//C#で書くとこういうこと
int a[0][0xc0ffee];
>0xc0ffeeってなに?
コーヒーと読めますが、特に意味は無くただの16進数です。
10進数だと12648430になります。
>それだけの大きさの配列を確保してるって事?
その通りです…が、メモリ消費量は微量です。
最初の次元の値が0なので、0×12648430=0 となり、0バイトの大きさになります。
>int a[1][0xc0ffee] みたいにはならないの?
そういうコードを書こうとするとコンパイルエラーになります。
>デバッグコード?
C++/CLIの仕様っぽいです。