İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Hatası CS0075

Negatif bir değer oluşturmak için değeri parantez içine almanız gerekir

Önceden tanımlanmış bir türü tanımlayan bir anahtar sözcük kullanarak yayın yapıyorsanız parantezlere ihtiyacınız yoktur. Aksi takdirde, parantezleri koymanız gerekir çünkü (x) –y bir atama ifadesi olarak kabul edilmez. C# Belirtiminden Bölüm 7.6.6:

Kesinleştirme kuralından, x ve y tanımlayıcı ise (x)y, (x)(y) ve (x)(-y) ifadeleri tür atama ifadeleridir, ancak x bir tür tanımlasa bile (x)-y değildir. Ancak, x önceden tanımlanmış bir türü (int gibi) tanımlayan bir anahtar sözcükse, dört formun tümü de atama ifadeleridir (çünkü böyle bir anahtar sözcük tek başına bir ifade olamaz).

Aşağıdaki kod CS0075 oluşturur:

C#
// CS0075  
namespace MyNamespace  
{  
    enum MyEnum { }  
    public class MyClass  
    {  
        public static void Main()  
        {  
            // To fix the error, place the negative  
            // values below in parentheses  
            int i = (System.Int32) - 4; //CS0075  
            MyEnum e = (MyEnum) - 1;    //CS0075  
            System.Console.WriteLine(i); //to avoid warning  
            System.Console.WriteLine(e); //to avoid warning  
        }  
    }  
}  

Ayrıca bkz.