Le Ruby docs pour dup
- dire:
En général,
clone
etdup
peut avoir différentes sémantiques en descendant les classes. Alors qu'clone
est utilisé pour dupliquer un objet, y compris son état interne,dup
utilise généralement la classe de l'héritière de l'objet pour créer la nouvelle instance.
Mais quand je fais quelques test, j'ai constaté qu'ils sont en fait les mêmes:
class Test
attr_accessor :x
end
x = Test.new
x.x = 7
y = x.dup
z = x.clone
y.x => 7
z.x => 7
Quelles sont donc les différences entre les deux méthodes?