module pind.samples.ja.cast_.cast_3; import std.stdio; void foo() { int[2] array = [ 1, 2 ]; bar(array); // 固定長配列をスライスとして渡す } // ← 注釈: この時点以降、'array'は有効ではない int[] sliceForLaterUse; void bar(int[] slice) { // 無効になるスライスを保存する sliceForLaterUse = slice; writefln("Inside bar : %s", sliceForLaterUse); } void main() { foo(); /* バグ: 配列要素ではなくなったメモリにアクセスする */ writefln("Inside main: %s", sliceForLaterUse); }