Я думаю, что Ruby интерпретируется как C. Если да, то как я могу использовать концепцию указателей и других функций, которые являются частью среды C? Как мы можем использовать силу C с простотой Ruby?
Можно ли использовать указатели в Ruby?
Ответ 1
В Ruby (почти) каждая переменная на самом деле является ссылкой/указателем на объект, например
a = [0, 1, 23]
b = a
a << 42
p b
даст [0, 1, 23, 42]
, потому что a
и b
указывают на один и тот же объект.
Итак, вы все время используете указатели.
Если вы хотите сделать арифметику указателя как в C, это невозможно с Ruby.
Ответ 2
"Сила C и простота Ruby" может быть достигнута через FFI
, что намного лучше, чем Win32API
или DL
.
Используя FFI
, вы можете обрабатывать указатели с C.
Вот два примера, которые вы должны начать: