设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 633|回复: 1
打印 上一主题 下一主题

[有事请教] 请问:begin结构是什么意思?

[复制链接]

Lv3.寻梦者

梦石
0
星屑
4212
在线时间
264 小时
注册时间
2013-10-13
帖子
815
跳转到指定楼层
1
发表于 2023-12-7 21:11:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
请问:begin结构是什么意思?

  #--------------------------------------------------------------------------
  # ● 转到输入下一个角色的命令
  #--------------------------------------------------------------------------
  def phase3_next_actor
    # 循环
    begin
      # 角色的明灭效果 OFF
      if @active_battler != nil
        @active_battler.blink = false
      end

      # 最后的角色的情况/
      if @actor_index == $game_party.actors.size-1
        # 开始主回合
        start_phase4
        return
      end
      # 推进角色索引/起初,@actor_index=-1
      @actor_index += 1
      @active_battler = $game_party.actors[@actor_index]
      @active_battler.blink = true

    end
    # 设置角色的命令窗口
    phase3_setup_command_window
  end

请问,这里的begin是 什么意思,有什么用途?

Lv4.逐梦者

梦石
0
星屑
5846
在线时间
791 小时
注册时间
2019-1-20
帖子
210
2
发表于 2023-12-7 23:40:53 | 只看该作者
遇到特定的,没有 def 过的单词,先去查查对应版本的帮助手册嘛

begin
例子:

begin
  do_something
rescue
  recover
ensure
  must_to_do
end

语法:

begin
  表达式 ..
[rescue [error_type,..] [then]
  表达式 ..]..
[ensure
  表达式 ..]
end

若给出了 rescue 部分(可以有若干个)的话,就可以在发生异常时捕捉到它。若存在与异常类型一致的 rescue 部分的话,就执行 rescue 的内容。
发生异常时,可以使用内部变量 $! 来查看异常的情况。

若 error_type 被省略,则将捕捉 StandardError 的子类中的所有异常。
Ruby 的大部分内部异常是 StandardError 的子类。具体请参考 内部异常类。

在 rescue 部分中,error_type 与普通的参数一样接受计算,若符合的话就执行相应部分的内容。
若 error_type 的计算值既非类又非模块的话,则引发 TypeError 异常。

若存在 ensure 部分的话,则在 begin 表达式结束之前一定会计算它。

begin 表达式会返回其自身或 rescue 部分最后的计算结果。

提高解决问题的方法:
查看对应版本的帮助文件或者默认脚本中可能相似的部分 看有没有思路能照搬(不是)
改变问题为更有可能的,常见的,系统性的 如:天气自动变化成下雨→天气系统 要多想几种可能
使用论坛的搜索功能查找相关问题 咦?这跟我想的不一样啊!讨厌啦~\(≧□≦)/~啦啦啦
清楚说明实际上你想解决的问题  想看坛友的女装,想看!  
脚本自己有改过的地方要尽量标明  提高除BUG效率 ... ...
脚本有问题但不是默认脚本的要全部贴出来 大胆点,尽情发,我说的是女装照!
三包原则:包有BUG,包甩锅,包咕咕 长期下线,急事换人!难事换人!啥事都换人!换人换人换人!!!
回复 支持 反对

使用道具 举报

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

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2025-7-1 03:42

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表