Project1

标题: 有是一个简单脚本问题 [打印本页]

作者: horryliang4    时间: 2008-4-25 01:37
标题: 有是一个简单脚本问题
我就是不知道怎么用$、@来做脚本变量!
请你们举例一下! 谢谢! [LINE]1,#dddddd[/LINE]版务信息:本贴由楼主自主结贴~
作者: 八云紫    时间: 2008-4-25 01:38
局部变量是暂时使用的变量,只能在函数和类等定义(在后面讲述)内部使用,之外变量就无效。与之相对,在程序任何地方都能引用的就是全局变量。全局变量可以在程序中任何地方使用,名称相同,就必然是同一个变量。

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

$global

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

局部变量例子:

foobar

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

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




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



[LINE]1,#dddddd[/LINE]
作者: horryliang4    时间: 2008-4-25 02:18
  ...  都是不明白~ 说不脚本例子吧! 谢谢
作者: 八云紫    时间: 2008-4-25 02:29
$a = 1

class A
  @b = 2
end

class B < A
  c = 3
end


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




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1