查看: 3096|回复: 3

有是一个简单脚本问题

  [复制链接]
梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-3-26
回帖
17
发表于 2008-4-25 01:37:18 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
我就是不知道怎么用$、@来做脚本变量!
请你们举例一下! 谢谢!
版务信息:本贴由楼主自主结贴~
我是新手~ 有好多不懂的请高手教教我 谢谢

神隐的主犯

梦石
0
星屑
553
在线时间
271 小时
注册时间
2008-2-22
回帖
7534

贵宾

发表于 2008-4-25 01:38:33 | 显示全部楼层
局部变量是暂时使用的变量,只能在函数和类等定义(在后面讲述)内部使用,之外变量就无效。与之相对,在程序任何地方都能引用的就是全局变量。全局变量可以在程序中任何地方使用,名称相同,就必然是同一个变量。

如下面的示例,以 $ 号开头的变量就作为全局变量使用。赋值方法和局部变量完全相同。

$global

虽然在任何地方都能引用,但使用全局变量不一定比局部变量好。全局变量十分强大,胡乱使用恐怕会使程序变得很难懂。请在使用时注意。



局部变量例子:

foobar

以小写字母或“_”开头的标识符就是局部变量或方法调用。

在局部变量作用域(类、模块、方法定义的部分)中小写字母开头的标识符要初始赋值,这个赋值属于局部变量的声明。引用未声明的标识符会当作无参数的方法调用。




以“@”开头的变量就是实变量,属于特定的对象。实变量可以在其类或子类的方法中引用。引用尚未初始化的实变量其值为 nil。





《天空之城 —— 破碎的命运》
回复

使用道具 举报

梦石
0
星屑
60
在线时间
1 小时
注册时间
2008-3-26
回帖
17
 楼主| 发表于 2008-4-25 02:18:39 | 显示全部楼层
  ...  都是不明白~ 说不脚本例子吧! 谢谢
我是新手~ 有好多不懂的请高手教教我 谢谢
回复

使用道具 举报

神隐的主犯

梦石
0
星屑
553
在线时间
271 小时
注册时间
2008-2-22
回帖
7534

贵宾

发表于 2008-4-25 02:29:49 | 显示全部楼层
$a = 1

class A
  @b = 2
end

class B < A
  c = 3
end


p $a  #=> 1(全局变量,任何时候都可以调用)
p @b  #=> nil(实变量在类或子类的方法中引用,不能在外部调用,所以是nil)
p c   #=> 出错(引用未声明的标识符会当作无参数的方法调用)
系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~

《天空之城 —— 破碎的命运》
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部