小编rub*_*796的帖子

在ruby方法中使用问号

假设我有课Player,我想要一个布尔方法来检查玩家是否受到攻击:

class Player
  attr_accessor :name, :health, :attacked?

  def initialize(name)
    @name = name
    @health = 100
    @attacked? = false
  end
end
Run Code Online (Sandbox Code Playgroud)

我收到语法错误:

SyntaxError: (irb):14: syntax error, unexpected '='
@attacked? = false
            ^
        from /usr/bin/irb:12:in `<main>'
Run Code Online (Sandbox Code Playgroud)

删除问号attacked可解决问题,但我认为最好遵循惯例来处理attacked?我的代码.这不是什么大不了的事放弃了问号,但为什么zero?nil?习惯时@variables?def methods?=无效?

ruby methods syntax

5
推荐指数
1
解决办法
3731
查看次数

标签 统计

methods ×1

ruby ×1

syntax ×1