Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Vyhodnocení konstantní hodnoty pro "const deklarace" zahrnuje kruhovou definici.
Deklarace proměnné const nemůže odkazovat na jinou proměnnou const tak, aby byla vytvořena cyklický závislost. To platí také pro přidružené konstantní hodnoty členů výčtu.
Příklad
Přidružená konstantní hodnota MyClass.Color.Red je explicitně nastavena na MyClass.Color.Blue, ale hodnota MyClass.Color.Blue je závislá na předchozím výčtovém členu (MyClass.Color.Red), proto nelze určit obě konstantní hodnoty. Podobně je konstantní proměnná MyClass.a definována z hlediska MyClass.b, ale je definována také z hlediska MyClass.a.
Následující ukázka vygeneruje CS0110:
// CS0110.cs
// compile with: /target:library
class MyClass
{
enum Color
{
Red = Blue, // CS0110
Blue,
}
public const int a = b + 1; // CS0110
public const int b = a + 1;
}
Pokud chcete tuto chybu vyřešit, přerušte cyklický odkaz úpravou nebo odebráním definice.