다음이있을 때 :
class Foo
   CONSTANT_NAME = ["a", "b", "c"]
  ...
end액세스 Foo::CONSTANT_NAME할 수있는 방법이 있습니까? 값에 액세스하기 위해 클래스 메소드를 만들어야합니까?  
답변
게시 한 내용이 완벽하게 작동해야합니다.
class Foo
  CONSTANT_NAME = ["a", "b", "c"]
end
Foo::CONSTANT_NAME
# => ["a", "b", "c"]답변
상수를 포함하는 클래스 내에서 추가 코드를 작성하는 경우 전역 코드처럼 취급 할 수 있습니다.
class Foo
  MY_CONSTANT = "hello"
  def bar
    MY_CONSTANT
  end
end
Foo.new.bar #=> hello클래스 외부의 상수에 액세스하는 경우 클래스 이름 앞에 두 개의 콜론이 붙습니다.
Foo::MY_CONSTANT  #=> hello답변
일부 대안 :
class Foo
  MY_CONSTANT = "hello"
end
Foo::MY_CONSTANT
# => "hello"
Foo.const_get :MY_CONSTANT
# => "hello"
x = Foo.new
x.class::MY_CONSTANT
# => "hello"
x.class.const_defined? :MY_CONSTANT
# => true
x.class.const_get :MY_CONSTANT
# => "hello"답변
액세스 할 수있는 방법이
Foo::CONSTANT_NAME있습니까?
예, 있습니다 :
Foo::CONSTANT_NAME답변
