コンテンツへスキップ

初期化されていない変数の宣言

Crystalでは、初期化されていない変数を宣言できます。

x = uninitialized Int32
x # => some random value, garbage, unreliable

これはアンセーフなコードであり、ほとんどの場合、パフォーマンスのペナルティなしで初期化されていないStaticArrayバッファを宣言するための低レベルコードで使用されます。

buffer = uninitialized UInt8[256]

バッファはスタック上に割り当てられ、ヒープの割り当てを回避します。

uninitializedキーワードの後の型は、型文法に従います。