メモリ
サブカテゴリ
チェックポイント
- `const` バインディング Essential `const` バインディングは真のコンパイル時定数を宣言する — その値はコンパイル時に計算され、使用されるたびに各使用箇所に展開される。`const` が `let` とどう違うか(実行時アドレスを持たない、`mut` 不可、型注釈が必須)、`const` の初期化式に許される式の種類、そして `const` とイミュータブルな `let` をどう使い分けるかを学ぶ。
- `static` 変数 Essential `static` はプログラムのデータセグメント(data segment)上に配置され、プログラム実行中ずっと存在し続ける単一の値を宣言する。`const` と異なり、`static` は参照を取れる固定のメモリアドレスを持つ。`static` をいつ使うべきか(大きな読み取り専用テーブル、プログラム全体で共有するハンドルなど)、ミュータブルな `static` に `unsafe` が必要な理由、そして `static` が Zig コースで学んだメモリのデータ領域とどう関係するかを学ぶ。