相关疑难解决方法(0)

为什么Ruby中的符号不​​被认为是一种变量?

编程和Ruby的新手,我希望关于符号的这个问题符合要求.据我所知,在红宝石的符号(如:book,:price)是特别有用的哈希键,以及全能做的是字符串可以做的事情一个轻量级的,特定子集.

但是,我在一方面对符号感到困惑.具体来说,当它们在attr_accessor方法类型中使用时,它们看起来更像是一个变量.例如,attr_reader :book, :price.

如果它们是该用法中的变量,那么这有点令人费解,因为它们通常不在变量类型中列出(如$ global,@ instance,local,@@ class,有时候,CONSTANT,变量类型)变量类型被描述.

如果符号是以这种方式使用的变量,那么应该对它们有什么范围?或者它们在这种情况下仍然是某种轻量级的字符串?(或者也许以更广泛的方式,符号,字符串和变量都具有基本的鸭子性质?)提前感谢您的见解和建议.

ruby variables symbols accessor

11
推荐指数
3
解决办法
1072
查看次数

标签 统计

accessor ×1

ruby ×1

symbols ×1

variables ×1