配列の結合 =~
ちょっと気になったので、はっきりさせておきたいこと。
import std.stdio; int main() { Object[] array; for (int i = 0; i < 10; ++i) { if (i % 2) { array ~= new Object[2]; } else { array ~= null; } } writef("%s\n", array.length); return 0; }
これは「15」。
import std.stdio; int main() { Object[][] array; for (int i = 0; i < 10; ++i) { if (i % 2) { array ~= new Object[2]; } else { array ~= null; } } writef("%s\n", array.length); return 0; }
これは「10」。
こういう話、ちょっと考えれば当然のように分かるけど、何気なく使っていて、「あれっ?」と思うと混乱する。