Remove ads

Eine Konstante (von lateinisch constans ‚feststehend‘) in einem Computerprogramm ist ein Behälter für einen Wert, der nach der Zuweisung nicht verändert werden kann. Das Gegenstück dazu ist eine Variable.

Konstanten haben im Quelltext meist semantische Bezeichner, was den Umgang vereinfacht und eine Verwechslung mit anderen Konstanten verhindern soll. Der Begriff wird allerdings auch für Literale verwendet (literale Konstante), die keinen semantischen Bezeichner haben. Daher ist es eindeutiger, bei frei definierbaren Konstanten von symbolischen Konstanten zu sprechen.

Vor Laufzeit bereits initialisierte Konstanten werden in diversen Hochsprachen traditionell GROSS (d. h. nur mit Großbuchstaben) bezeichnet.

Remove ads

Arten von Konstanten

Es wird zwischen verschiedenen Arten von Konstanten unterschieden.

  • Literale Konstanten
    "Hello World!"
    
  • Konstanten, welche zur Kompilierzeit festgelegt werden. Der Compiler ersetzt jedes Auftreten der Konstante durch den jeweiligen Wert.
    const string HELLO = "Hello World!";
    
  • Konstanten, welche zur Kompilierzeit festgelegt werden. Der Wert wird jedoch erst zur Laufzeit ausgelesen.
    readonly string hello = "Hello World!";
    
  • Konstanten, welche zur Laufzeit festgelegt werden.
    let hello = "Hello World!"
    
  • Meta-Konstanten, welche das Verhalten des Präprozessors steuern, jedoch kein Teil des Programms darstellen.
    #define DEBUG
    
Remove ads

Laufzeit-Konstanten durch Kapselung

In Objektorientierten Programmiersprachen besteht die Möglichkeit eine Laufzeit-Konstante nachzubilden, indem eine Variable in einem Objekt gekapselt wird und dabei ausschließlich Lesemethoden zur Verfügung gestellt werden:

public MyObject(string NAME)
{
   public string NAME { get; } = NAME;
}

In Funktionalen Programmiersprachen kann die Variable in einer Closure gekapselt werden:

public Func<string> Create(string NAME)
{
   return () => NAME;
}

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.

Remove ads