SORU
5 Aralık 2009, CUMARTESİ


Orada C parametre kısıtlaması ile genel bir kurucu#?

C# gibi genel bir yöntem üzerinde bir kısıtlama koyabilirsiniz:

public class A {

    public static void Method<T> (T a) where T : new() {
        //...do something...
    }

}

Ayrıca bir şekilde bir kısıtlama gibi koymak "halka açık bir yapıcısı vardır[,] parametre?" Aşağıdaki kod iyi derleme değildir:

public class A {

    public static void Method<T> (T a) where T : new(float[,] u) {
        //...do something...
    }

}

Ya da-geçici bir çözüm bulmak için bir var mı?

CEVAP
5 Aralık 2009, CUMARTESİ


Buldum, bunu yapamazsın.

Geçici bir çözüm olarak ben normalde bu tür nesneleri T yaratabilen bir temsilci kaynağı:

public class A {

    public static void Method<T> (T a, Func<float[,], T> creator) {
        //...do something...
    }

}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Jucyber Tutoriais

    Jucyber Tuto

    8 EYLÜL 2009
  • TheOtherMau5

    TheOtherMau5

    6 Mart 2012
  • Videogamerz | Call of Duty

    Videogamerz

    5 NİSAN 2012