也可以这样做,这可以避免两次读取 ivar,并使其更清晰地表明它是急切初始化的(当然,逻辑也可以放在 initial_flag_settings 辅助方法中以进行组织):
class << self
attr_reader :flag_settings
end
@flag_settings = FlagSettings.new
@flag_settings.add(
3,
:off_topic,
notify_type: true,
auto_action_type: true,
)
# ...