11

我刚开始学习 Ruby,我一直无法很好地解释 @@ 和 @ 在类变量方面的区别。如果有人可以提供一个基本的直观示例,那就太好了。它们也可以互换吗?

4

2 回答 2

14

带有前缀的变量@@是类变量,带有前缀@的变量是实例变量。在这个答案中可以找到一个很好的描述:https ://stackoverflow.com/a/5890199/1181886

于 2013-06-13T22:11:53.060 回答
12

@ 变量名前:实例变量(每个实例一个)

@@ 在变量名之前:静态变量(每个类一个)

于 2013-06-13T22:11:46.033 回答