Suche…


Syntax

  • MY_CONSTANT_NAME = "mein Wert"

Bemerkungen

Konstanten sind in Ruby hilfreich, wenn Sie Werte haben, die nicht irrtümlicherweise in einem Programm geändert werden sollen, z. B. API-Schlüssel.

Definiere eine Konstante

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

Ständiger Name beginnt mit Großbuchstaben. Alles, was mit Großbuchstaben beginnt, wird in Ruby als constant . class und module sind also auch konstant. Die beste Methode ist, alle Großbuchstaben für die Konstante zu verwenden.

Ändern Sie eine Konstante

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

Der obige Code führt zu einer Warnung, da Sie Variablen verwenden sollten, wenn Sie deren Werte ändern möchten. Es ist jedoch möglich, einen Buchstaben in einer Konstante ohne Warnung zu ändern, wie z.

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

Nachdem der zweite Buchstabe von MY_CONSTANT , wird er zu "Hullo, world" .

Konstanten können in Methoden nicht definiert werden

def say_hi
  MESSAGE = "Hello"
  puts MESSAGE
end

Der obige Code führt zu einem Fehler: SyntaxError: (irb):2: dynamic constant assignment .

Konstanten in einer Klasse definieren und ändern

class Message
  DEFAULT_MESSAGE = "Hello, world"

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

Die Konstante DEFAULT_MESSAGE kann mit folgendem Code geändert werden:

Message::DEFAULT_MESSAGE = "Hullo, world"


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow