我不清楚符號的值和正確使用。何時使用Ruby中的符號
好處似乎是通過讓它只存在於內存中來消除對同一個散列的多個副本的需要。我想知道這是否屬實,還有其他什麼好處。
如果我創建的屬性如name
,email
和password
以及每個屬性使用的符號而不是字符串,是否意味着每個屬性只有一個對象?看起來這樣可以避免散列中的屬性的字符串副本(這看起來像是一件好事)。
有人能幫我理解一個符號是什麼以及什麼時候在散列中使用一個字符串更好?每個的好處和缺陷是什麼?
另外,任何人都可以談論每個內存的權衡?由於可擴展性很重要,我很好奇符號是否有助於提高速度。
http://stackoverflow.com/questions/2341837/understanding-symbols-in-ruby可能是有用的 – JKillian
真棒,謝謝。你知道相關的記憶折衷嗎?我可以看出,創建的對象較少,我認爲一般情況會更好。但我對實際的表現體驗感到好奇,也對實際的權衡有更多的瞭解。 – markthethomas
我不明白你爲什麼提到哈希。散列與你的問題有什麼關係?我不知道你的意思是「需要同一個散列的多個副本」。 – sawa