Я не настолько осведомлен в этом вопросе, поэтому я решил спросить здесь. Допустим, у нас есть какая-то «библиотека» в Ruby (или любой другой язык сценариев для передачи по ссылке):
class Moo
attr_accessor :bar
def initialize
self
end
end
a = 'a string'
b = Moo.new
b.bar = a
b.bar
, очевидно, будет тем же объектом, что и a
.
Правильно ли оставить все как есть в во всех случаях , поэтому программист, которому они нужны отдельно, будет выполнять клонирование вручную? Это единственная здравомыслящая идея, с которой я столкнулся.