Udostępnij za pośrednictwem


Const (C# odniesienia)

const Słowo kluczowe jest używany do modyfikacji deklaracji pola lub zmiennej lokalnej.Określa, że wartość pola lub zmienna lokalna jest stała, co oznacza, że nie mogą być modyfikowane.Na przykład:

const int x = 0;
public const double gravitationalConstant = 6.673e-11;
private const string productName = "Visual C#";

Uwagi

Typ deklaracji stałej określa typ członków, wprowadzone przez deklarację.Wyrażenie stałe muszą wykazywać wartości typu docelowego lub typu, który można niejawnie konwertować na typ docelowy.

Wyrażenie stałe jest wyrażenie, które może być całkowicie ocenione w czasie kompilacji.W związku z tym, to tylko możliwe wartości dla stałych typy odwołań są string i null.

W deklaracji stałej może deklarować wielu stałe, takie jak:

public const double x = 1.0, y = 2.0, z = 3.0;

static Modyfikator nie jest dozwolony w deklaracji stałej.

Stała mogą uczestniczyć w wyrażeniu stałym w następujący sposób:

public const int c1 = 5;
public const int c2 = c1 + 100;

[!UWAGA]

Tylko do odczytu słowa kluczowego różni się od const słowa kluczowego.A const pola mogą być inicjowane tylko w deklaracji tego pola.A readonly pola mogą być inicjowane w deklaracji lub w konstruktorze.W związku z tym readonly pola mogą mieć różne wartości w zależności od konstruktora używane.Ponadto Chociaż const pole jest stałą czasu kompilacji, readonly pole może być używane dla stałych run-time, jak w tym wierszu:public static readonly uint l1 = (uint)DateTime.Now.Ticks;

Przykład

public class ConstTest 
{
    class SampleClass 
    {
        public int x;
        public int y;
        public const int c1 = 5;
        public const int c2 = c1 + 5;

        public SampleClass(int p1, int p2) 
        {
            x = p1; 
            y = p2;
        }
    }

    static void Main() 
    {
        SampleClass mC = new SampleClass(11, 22);   
        Console.WriteLine("x = {0}, y = {1}", mC.x, mC.y);
        Console.WriteLine("c1 = {0}, c2 = {1}", 
                          SampleClass.c1, SampleClass.c2 );
    }
}
/* Output
    x = 11, y = 22
    c1 = 5, c2 = 10
 */

Ten przykład demonstruje, jak używać stałych jako zmienne lokalne.

public class SealedTest
{
    static void Main()
    {
        const int c = 707;
        Console.WriteLine("My local constant = {0}", c);
    }
}
// Output: My local constant = 707

Specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz Specyfikacja języka C#. Specyfikacja języka to najlepsze źródło informacji dotyczących składni i zastosowania języka C#.

Zobacz też

Informacje

Słowa kluczowe języka C#

Modyfikatory (C# odniesienia)

tylko do odczytu (C# odniesienia)

Koncepcje

Podręcznik programowania C#

Inne zasoby

C# odniesienia