Arbeiten mit .NET: Materialien/ Programmierkurs C-Sharp: Konstanten
Konstanten
BearbeitenEinem mit const
deklarierten „Objekt“ kann nach der Deklaration und Initialisierung kein neuer Inhalt zugewiesen werden. Das „Objekt“ wird dadurch zu einer Konstanten.
Eine Konstante kann dabei in C# ein Grunddatentyp sowie eine Aufzählung (Enumeration) sein.
Bei allen anderen Wertdatentypen (Strukturen) sowie Referenztypen ist eine Deklaration mit dem Modifizierer const
nicht erlaubt.
Fehlerhafte Zuweisungen an eine Konstante werden mit dem Kompilerfehler CS0133 vom C#-Kompiler quittiert.
using System;
using System.IO;
public class ConstBeispiel
{
public static void Main()
{
//Es wird eine Konstante für die Länge eines Arrays angelegt
const int arrayLength = 1024;
//Es wird eine Konstante festgelegt, welche die Zugriffart auf eine Datei beschreibt (Enum)
const FileMode fm = FileMode.Open;
//Es wird eine Konstante festgelegt, welche den Namen der zu öffnende Datei festlegt
const string fileName = „beispiel.txt“;
//Buffer erstellen
byte[] readBuffer = new byte[arrayLength];
//Stream zur Datei öffnen
Filestream fs = new FileStream(fileName,fm);
//Daten Lesen
fs.Read(readBuffer,0,readBuffer.Length);
//Stream schliesen
fs.Close();
//Daten ggf. bearbeiten.
…
// FEHLER: IList wird ein Referenzdatentyp zugewiesen, nicht konstant
const IList liste = new ArrayList();
// FEHLER: IList wird ein Struct zugewiesen, welcher der C# Kompiler nicht kennt
const TimeSpan zeitSpanne = new TimeSpan(10);
}
}