私は C や C++ の経験がないので、静的配列には少し戸惑います。それらは何のため?それらがスタックに割り当てられるのはなぜですか?
パフォーマンス上の利点があると思います。スタック割り当てが高速になり、ガベージ コレクションが不要になります。しかし、なぜコンパイル時に長さを知る必要があるのでしょうか? 実行時に固定サイズの配列を作成し、スタックに割り当てることはできませんでしたか?
D の動的な配列またはスライスは、ポインターと長さのプロパティを含む構造体によって表されます。静的配列にも同じことが当てはまりますか? それらはどのように表されますか?
それらを関数に渡すと、(ref を使用しない限り) 全体がコピーされますが、その背後にある理論的根拠は何ですか?
D では動的配列とスライスが静的配列よりもはるかに重要であることを認識しています。そのため、ドキュメントではそれらについてあまり詳しく説明していませんが、もう少し背景を知りたいと思っています。静的配列の特殊性は、スタック割り当ての仕組みに関係していると思います。