Frage

In C ++ können Sie:

uint8 foo_bar

Wie würden wir das Gleiche in Ruby tun? Irgendwelche Alternativen?

Dieser Beitrag scheint ihm nahe zu sein Vielleicht kann jemand erklären?

War es hilfreich?

Lösung

Ruby abstraktiert die interne Speicherung von Ganzzahlen, sodass Sie sich keine Sorgen machen müssen.

Wenn Sie einer Variablen eine Ganzzahl zuweisen, befasst sich Ruby mit den Interna, wobei bei Bedarf Speicher zugewiesen wird. Kleinere Ganzzahlen sind vom Typ Fixnum (In einem einzigen Wort gespeichert) größere Ganzzahlen sind vom Typ Bignum.

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

Ruby wird dynamisch eingetragen, sodass Sie eine Variable nicht dazu zwingen können, nur nicht signierte 8-Bit-Ganzzahlen zu enthalten (so wie Sie eine Variable nicht dazu zwingen können, nur Stringwerte usw. zu enthalten).

Andere Tipps

Sie deklarieren keine Typen in Ruby. Die Sprache wird dynamisch getippt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top