Ricerca…


Sintassi

  • MY_CONSTANT_NAME = "il mio valore"

Osservazioni

Le costanti sono utili in Ruby quando hai valori che non vuoi essere erroneamente modificati in un programma, come le chiavi API.

Definire una costante

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

Il nome costante inizia con la lettera maiuscola. Tutto ciò che inizia con la lettera maiuscola è considerato come constant in Ruby. Quindi anche la class e il module sono costanti. La migliore pratica è usare tutte le maiuscole per dichiarare costante.

Modifica una costante

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

Il codice sopra genera un avvertimento, perché dovresti usare le variabili se vuoi cambiare i loro valori. Tuttavia è possibile cambiare una lettera alla volta in una costante senza un avviso, come questo:

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

Ora, dopo aver cambiato la seconda lettera di MY_CONSTANT , diventa "Hullo, world" .

Le costanti non possono essere definite nei metodi

def say_hi
  MESSAGE = "Hello"
  puts MESSAGE
end

Il codice sopra riportato genera un errore: SyntaxError: (irb):2: dynamic constant assignment .

Definisci e modifica le costanti in una classe

class Message
  DEFAULT_MESSAGE = "Hello, world"

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

La costante DEFAULT_MESSAGE può essere modificata con il seguente codice:

Message::DEFAULT_MESSAGE = "Hullo, world"


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow