İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Hatası CS1688

Bir veya daha fazla out parametresi olduğundan, parametre listesi olmayan anonim yöntem bloğu 'delegate' temsilci türüne dönüştürülemiyor

Derleyici çoğu durumda anonim yöntem bloğundan parametrelerin atılmasına izin verir. Anonim yöntem bloğunun parametre listesi olmadığında ancak temsilcinin bir out parametresi olduğunda bu hata oluşur. Derleyici bu duruma izin vermez, çünkü parametrenin out varlığını yoksayması gerekir ve bu da doğru davranış olma olasılığı düşüktür.

Örnek

Aşağıdaki kod CS1688 hatasını oluşturur.

C#
// CS1688.cs  
using System;  
delegate void OutParam(out int i);  
class ErrorCS1676  
{  
    static void Main()
    {  
        OutParam o;  
        o = delegate  // CS1688  
        // Try this instead:  
        // o = delegate(out int i)  
        {
            Console.WriteLine("");  
        };  
    }  
}