Как объявить 8-разрядное беспингевое целое число в Ruby?

StackOverflow https://stackoverflow.com/questions/1335710

  •  20-09-2019
  •  | 
  •  

Вопрос

В C ++ вы можете сделать:

uint8 foo_bar

Как бы мы сделали то же самое в Руби? Какие -нибудь альтернативы?

Этот пост кажется близким к нему Может, кто -то может объяснить?

Это было полезно?

Решение

Ruby отбросит внутреннее хранилище целых чисел, поэтому вам не нужно беспокоиться об этом.

Если вы назначите целое число с переменной, Ruby будет иметь дело с внутренними, распределяя память при необходимости. Меньшие целые числа имеют тип Fixnum (хранятся в одном словом), более крупные целые числа имеют тип Bignum.

a = 64
a.class  #=> Fixnum; stored in a single word
a += 1234567890
a.class  #=> Bignum; stored in more than a single word

Рубина динамически напечатана, поэтому вы не можете заставить переменную содержать только без знака 8-битных целых чисел (так же, как вы не можете заставить переменную, содержащую только строковые значения и т. Д.).

Другие советы

You don't declare types in Ruby. The language is dynamically typed.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top