수색…


통사론

  • MY_CONSTANT_NAME = "나의 가치"

비고

상수는 API 키와 같이 실수로 프로그램에서 변경하지 않으려는 값이있을 때 Ruby에서 유용합니다.

상수 정의

MY_CONSTANT = "Hello, world" # constant
Constant = 'This is also constant' # constant
my_variable = "Hello, venus" # not constatn

상수는 대문자로 시작합니다. 대문자로 시작하는 모든 것은 루비에서 constant 로 간주됩니다. 그래서 classmodule 도 일정합니다. 가장 좋은 방법은 상수 선언에 대문자를 사용하는 것입니다.

상수 수정

MY_CONSTANT = "Hello, world"
MY_CONSTANT = "Hullo, world"

위의 코드는 값을 변경하려는 경우 변수를 사용해야하므로 경고 메시지를 표시합니다. 그러나 다음과 같이 경고없이 상수에서 한 번에 한 글자 씩 변경할 수 있습니다.

MY_CONSTANT = "Hello, world"
MY_CONSTANT[1] = "u"

이제 MY_CONSTANT 의 두 번째 문자를 변경하면 "Hullo, world" MY_CONSTANT "Hullo, world" 됩니다.

메서드에서 상수를 정의 할 수 없습니다.

def say_hi
  MESSAGE = "Hello"
  puts MESSAGE
end

위 코드 결과는 다음과 같은 오류가 발생합니다 : SyntaxError: (irb):2: dynamic constant assignment .

클래스에서 상수 정의 및 변경

class Message
  DEFAULT_MESSAGE = "Hello, world"

  def speak(message = nil)
    if message
      puts message
    else
      puts DEFAULT_MESSAGE
    end
  end
end

상수 DEFAULT_MESSAGE 는 다음 코드로 변경할 수 있습니다.

Message::DEFAULT_MESSAGE = "Hullo, world"


Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow