这天好梦幻的感觉
收藏已点!
携程网站暂时无法提供服务,正在紧急修复中...您可以访问:艺龙旅行网
艺龙现在怎么也打不开了==
有些地方的解释还是有误导的地方,比如:
1,module 中可以定义实例方法也可以定义类方法,而类中的方法只能是实例方法 2, ......而 instance_eval 创建的就是一个类方法了
针对 1 处,类中的方法只能是实例方法
这点不准确;2 处, instance_eval
方法就是深入到对象内部执行操作,它可以访问对象的实例变量,也可以创建当前对象的实例方法,你的举例有一定的巧合性:
#instance_eval class Person end Person.instance_eval do def human? true end end Person.human? # true
因为此处的 Person 对象本来就是 class 的实例,这时创建的 human? 就是 class 的实例方法,也就是 Person 这个类的类方法,如果这样操作:
class Person
end
obj = new Person
obj.instance_eval do
def human?
true
end
end
obj.human? # true
这时的 human?
就是一个实例方法,所以你说的 instance_eval创建的就是一个类方法了
就不准确。
虽然有些地方有误,但是给 LZ 这种分享精神点赞!
不就是一个搞视频的网站么,这类网站多的是,第一次听说,要不是在 Ruby China 发帖还不知道
#3 楼 @skpark1987 因为隔壁是用 Python 写出来的
之前没改的版面与现在改了后的版面确实相差甚大!
#7 楼 @louisliu813 说起团八百,上次邀去面试,表示只见到了前台人员,搞 Ruby 的人都没见到,然后就走了……
我还以为最近两天发生的事,原来是 2014 年 9 月的事了,也就那样吧
#5 楼 @ericwang0717 o(∩∩)o...哈哈,不用管我,现在这年代不用微博不用微信也是怪人吧
进去了,找了找其它登录方式,发现没找到,然后我又走了……微博登录将我拒之门外
成都 是个好地方。
为何不在 100offer 上拍几个优秀的 Rails 开发
继续 vim.. ..
方法调用要跟上接收者,如果没有就默认是当前对象 self,除非是私有方法。
这里你调用 xmethod,没有接受者,而 xmethod 也不是私有方法,所以接受者就是当前对象 self,此时当前对象是 A::B,但 xmethod 是实例方法,所以会报错 undefined method ’xmethod‘ for A::B:Module
,
解决方法: 1,如 #1 2,xmethod 定义为私有方法
#12 楼 @lithium4010 1,向一个对象中动态添加方法 2,向其它文件添加多行内容 3,输出多行结果 ...... 其实 HEREDOC 本质就是为了方便操作多行字符串,具体的使用方法你可以参照 Ruby Heredoc 部分
大三小白默默点赞 :plus1:
R - u - b - y
#3 楼 @zouchaoge rubygem.org 并没有墙吧,用 taobao 的镜像慢可能是当地网络原因,我这里没有问题
年度最佳招聘贴 :plus1:
#4 楼 @759803573 如果你真要调用方法的话,最简单的方法就是: nums = rotate(nums, k)
这样使用就是说你不需要在定义方法了,直接使用:
nums = [1,2]
k = 1
nums.instance_exec(k) do
k %=self.length
if k!= 0
t = self[k..(self.length-1).to_i]
f = self[0..(k-1).to_i]
nums = t + f
end
end
p nums