Porada: definiowanie stałych w języku C#
Stałe to pola, których wartości są ustawiane w czasie kompilacji i nigdy nie można ich zmieniać. Użyj stałych, aby podać znaczące nazwy zamiast literałów liczbowych ("liczby magiczne") dla wartości specjalnych.
Uwaga
W języku C# nie można używać dyrektywy preprocesora #define do definiowania stałych w sposób, który jest zwykle używany w językach C i C++.
Aby zdefiniować stałe wartości typów całkowitych (int
itd byte
.), użyj wyliczonego typu. Aby uzyskać więcej informacji, zobacz wyliczenie.
Aby zdefiniować stałe inne niż całkowite, jednym z podejść jest zgrupowanie ich w jednej klasie statycznej o nazwie Constants
. Będzie to wymagało, aby wszystkie odwołania do stałych zostały poprzedzone nazwą klasy, jak pokazano w poniższym przykładzie.
Przykład
static class Constants
{
public const double Pi = 3.14159;
public const int SpeedOfLight = 300000; // km per sec.
}
class Program
{
static void Main()
{
double radius = 5.3;
double area = Constants.Pi * (radius * radius);
int secsFromSun = 149476000 / Constants.SpeedOfLight; // in km
Console.WriteLine(secsFromSun);
}
}
Użycie kwalifikatora nazwy klasy pomaga upewnić się, że ty i inni użytkownicy używający stałej rozumieją, że jest stała i nie można jej modyfikować.