gpt4 book ai didi

ruby - 提取祖先到 "me"

转载 作者:太空宇宙 更新时间:2023-11-03 18:18:39 26 4
gpt4 key购买 nike

给定

class Bird
def self.bird_ancestors
ancestors.first(ancestors.find_index(Bird)+1)
end
end

class Duck < Bird
end

class FeatheredDuck < Duck
end

FeatheredDuck.bird_ancestors => [FeatheredDuck,Duck,Bird]
Duck.bird_ancestors => [Duck,Bird]
Bird.bird_ancestors => [Bird]

如何在 Bird 中引用 Bird 而不是显式的?我知道 self__class__ 不 工作。

最佳答案

在类方法中,self 引用当前类对象:

class Bird
def self.foo
self
end
end

p Bird.foo # => "Bird"

关于ruby - 提取祖先到 "me",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22115987/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com