Spec-Zone.ru › Crystal

Объявление неинициализированной переменной

Crystal позволяет объявлять неинициализированные переменные:

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

Этот небезопасный код почти всегда используется в низкоуровневом коде для объявления буферов StaticArray без инициализации и без снижения производительности:

buffer = uninitialized UInt8[256]

Буфер выделяется в стеке, что позволяет избежать выделения памяти в куче.

Тип после ключевого слова uninitialized соответствует грамматике типов.

To the extent possible under law, the persons who contributed to this workhave waived
all copyright and related or neighboring rights to this workby associating CC0 with it.
https://crystal-lang.org/reference/1.2/syntax_and_semantics/declare_var.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API