2012-12-28 1 views
-1

J'ai écrit ce morceau de code mais je ne sais pas pourquoi il n'imprime pas la deuxième phrase, il imprime juste la première partie qui est "Une concat est comme". Je m'attendais à voir le reste de la phrase de la méthode TalkToMe aussi.Utilisation correcte de "#" dans la concaténation de chaînes

object1 = Object.new 

def object1.TalkToMe 
    puts ("Depending on the time, they may be in one place or another.") 
end 

object1.TalkToMe 

puts "Some string concat is like " #{object1.TalkToMe} " 
+4

Débarrassez-vous des déséquilibrés' »' dans le centre de cette chaîne. En l'état actuel, le '#' commence un "commentaire de fin de ligne". – Zabba

Répondre

1

D'abord, TalkToMe devrait être talk_to_me par convention. Deuxièmement, il suffit de retourner la chaîne, n'utilisez pas puts car elle sera évaluée en premier, puis la chaîne 'Some string ...' sera évaluée sur une ligne séparée.

Votre question initiale:

changement

puts "Some string concat is like " #{object1.TalkToMe} "

à cette

puts "Some string concat is like #{object1.TalkToMe} "

La mise en évidence de la syntaxe montre que #{object1.TalkToMe} est traité comme un commentaire.

+0

ok merci a sorti la faute de frappe "qui était au milieu ... mais n'imprime toujours pas cette phrase dans la continuité de son côté gauche – Bohn

+0

@BDotA Avez-vous supprimé' puts' de 'TalkToMe'? –

+0

J'ai également essayé que ..puis il n'a même pas imprimé la première partie de la vie – Bohn

1

Cela devrait se faire, mais ne mettez pas fin à la chaîne.

Remplacer puts "Some string concat is like " #{object1.TalkToMe} " avec puts "Some string concat is like #{object1.TalkToMe} "

Notez la suppression du « au milieu de la phrase