sizeof
Выражение sizeof возвращает Int32 с размером заданного типа в байтах. Например:
sizeof(Int32) # => 4
sizeof(Int64) # => 8
Для типов Reference размер совпадает с размером указателя:
# On a 64 bits machine
sizeof(Pointer(Int32)) # => 8
sizeof(String) # => 8
Это связано с тем, что память Reference выделяется в куче, а передаётся указатель на неё. Чтобы получить фактический размер класса, используйте instance_sizeof.
Аргумент sizeof — это тип, который часто используется вместе с typeof:
a = 1
sizeof(typeof(a)) # => 4
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/sizeof.html