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

Project1

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

[已经解决] 腳本問題 有關獲取Backtrace

[复制链接]

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2011-1-28
帖子
35
跳转到指定楼层
1
发表于 2013-7-12 16:46:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

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

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

x
本帖最后由 nokaiwai 于 2013-7-13 15:11 编辑

隨便舉一個例子好了
例如運行以下腳本時

RUBY 代码复制
  1. def add4(num)
  2.   unless num.is_a?(Numeric)
  3.     p error = ArgumentError.new("...")   #=> #<ArgumentError: ...>
  4.     p error.backtrace                    #=> nil
  5.   end
  6.   begin
  7.     num + 4
  8.   ensure
  9.   p $!                                   #=> #<TypeError: can't convert Fixnum into String>
  10.   p $@                                   #=> ["{0000}:7:in '+'", "{0000}:7:in 'add4'", "{0000}:15:in '<main>'", "ruby:in 'eval'"]
  11.   p error.set_backtrace($@[2])           #=> ["{0000}:15:in '<main>'"]
  12.   raise error                            #=> Script '' line 15: ArgumentError occurred.\n...
  13.   end
  14. end
  15. add4("a")


請問如何在第4行時獲取需要的 backtrace  ("{0000}:15:in '<main>'") 呢?  謝謝

自己發現答案了
大概就是加上 rescue => error
http://www.ruby-doc.org/core-1.9.3/Exception.html

Lv1.梦旅人

梦石
0
星屑
50
在线时间
128 小时
注册时间
2013-3-23
帖子
77
2
发表于 2013-7-12 16:50:57 | 只看该作者
如果LZ你使用的是VA,那么,test2的p应该为msgbox,
如果LZ不是用VA,那么,旁边就是VX和XP的提问区。
PS:LZ问题看不懂。。。{:2_276:}
.
回复 支持 反对

使用道具 举报

Lv1.梦旅人

梦石
0
星屑
50
在线时间
62 小时
注册时间
2011-1-28
帖子
35
3
 楼主| 发表于 2013-7-12 17:03:28 | 只看该作者
VA 也可以用 P 啊 0.0
又不一定要以視窗形式顯示

再說 它只是例子
P 和 MSGBOX 的什麼都好啦
難道還要吐槽說 「為什麼要 ADD4 ,加一或者減一不好嗎??」
反正這些都不重要 ~.~
回复 支持 反对

使用道具 举报

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

本版积分规则

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

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

GMT+8, 2024-11-16 06:14

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

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