查看: 1903|回复: 4

[已经解决] 请问一下RGSS的函数或者变量的命名规范

[复制链接]
梦石
0
星屑
49
在线时间
29 小时
注册时间
2015-4-9
回帖
7
发表于 2015-4-12 14:32:16 | 显示全部楼层 |阅读模式

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

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

×
下面这段代码中 "[]="是函数名称吗?如果是,为什么不是以字母或者下划线开头?如果不是,那是啥?
最后问个问题,可以在每行表达式后面加分号吗?
[pre lang="ruby"]#==============================================================================
# ■ Game_SelfSwitches
#------------------------------------------------------------------------------
#  处理独立开关的类。编入的是类 Hash 的外壳。本类的实例请参考
# $game_self_switches。
#==============================================================================

class Game_SelfSwitches
  #--------------------------------------------------------------------------
  # ● 初始化对像
  #--------------------------------------------------------------------------
  def initialize
    @data = {}
  end
  #--------------------------------------------------------------------------
  # ● 获取独立开关
  #     key : 键
  #--------------------------------------------------------------------------
  def [](key)
    return @data[key] == true ? true : false
  end
  #--------------------------------------------------------------------------
  # ● 设置独立开关
  #     key   : 键
  #     value : ON (true) / OFF (false)
  #--------------------------------------------------------------------------
  def []=(key, value)
    @data[key] = value
  end
end[/pre]

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2015-4-12 14:38:11 | 显示全部楼层
1. 是。以下方法(运算符)可以用这种方式定义(Ruby 1.9 以上。XP 有一部分不支持):
! ~ +@ ** -@ * / % + - << >> & | ^ > >= < <= <=> == === != =~ !~

2. 可以,不过不建议这么做

点评

谢谢  发表于 2015-4-12 15:00
回复

使用道具 举报

梦石
0
星屑
49
在线时间
29 小时
注册时间
2015-4-9
回帖
7
 楼主| 发表于 2015-4-12 14:42:56 | 显示全部楼层
taroxd 发表于 2015-4-12 14:38
1. 是。以下方法(运算符)可以用这种方式定义(Ruby 1.9 以上。XP 有一部分不支持):
! ~ +@ ** -@ * / % ...

以下方法(运算符)可以用这种方式定义(Ruby 1.9 以上。XP 有一部分不支持):
! ~ +@ ** -@ * / % + - << >> & | ^ > >= < <= <=> == === != =~ !~

这段话要怎么理解?
回复

使用道具 举报

…あたしは天

梦石
0
星屑
2308
在线时间
4033 小时
注册时间
2010-10-4
回帖
10548

开拓者贵宾

发表于 2015-4-12 14:48:45 | 显示全部楼层
wangzh9173 发表于 2015-4-12 14:42
以下方法(运算符)可以用这种方式定义(Ruby 1.9 以上。XP 有一部分不支持):
! ~ +@ ** -@ * / % + -  ...



举个完全没有意义的例子:
[pre lang="ruby"]
class Fixnum
  def +(other)
    3
  end
end

p 1 + 1   # => 3[/pre]

评分

参与人数 1星屑 +200 收起 理由
myownroc + 200 认可答案

查看全部评分

回复

使用道具 举报

梦石
0
星屑
49
在线时间
29 小时
注册时间
2015-4-9
回帖
7
 楼主| 发表于 2015-4-12 14:53:37 | 显示全部楼层
taroxd 发表于 2015-4-12 14:48
举个完全没有意义的例子:

class Fixnum

意思是重新定义这些运算符的功能?

点评

差不多就是这意思吧  发表于 2015-4-12 14:56
回复

使用道具 举报

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

本版积分规则

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

在本版发帖返回顶部