赞 | 0 |
VIP | 133 |
好人卡 | 5 |
积分 | 1 |
经验 | 15036 |
最后登录 | 2017-9-12 |
在线时间 | 190 小时 |
Lv1.梦旅人 彩色的银子
- 梦石
- 0
- 星屑
- 50
- 在线时间
- 190 小时
- 注册时间
- 2006-6-13
- 帖子
- 1361
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 神思 于 2011-7-20 03:49 编辑
哈哈,过下瘾而已,编码编的头都晕晕的了。- class SuperObject
- def method_missing(method, *args)
- if(@@methodsMap[[method,args.length]] != nil)
- return SuperObject.call(method, *args);
- else
- return super
- end
- end
-
- @@methodsMap = Hash.new();
- def self.define(method, &proc)
- @@methodsMap[[method, proc.arity]] = proc;
- end
-
- def self.call(method, *args)
- @@methodsMap[[method, args.length]].call(*args);
- end
-
- def self._return(*args)
- return *args;
- end
-
- define(:print){|arg1|
- _return arg1 * 2;
- }
-
- define(:print){|arg1, arg2|
- _return arg1 * 2 * arg2
- }
-
- end
- p SuperObject.new().print(2);
- j = SuperObject.new().print(2, 2);
- p "j=#{j}";
复制代码 |
评分
-
查看全部评分
|