Khi tôi hạn chế T với: Object như thế này:C# Generics: Ràng buộc T trong đó T: Object không biên dịch; Lỗi: Hạn chế không thể đặc biệt lớp 'đối tượng'
public interface IDoWork<T> where T : Object
{
T DoWork();
}
tôi nhận được lỗi:
Constraint cannot be special class 'object'
Liệu đó có nghĩa là có một sự khác biệt ngụ ý với sau đây mà biên dịch?
public interface IDoWork<T> // where T : Object
{
T DoWork();
}
Tất cả các lớp C# là lớp con của đối tượng. Một hạn chế như vậy là hơi lạ một chút :) –
Đối với những gì nó có giá trị, tôi đã cố gắng để làm cho T == Object == Void như trong câu hỏi SO này: http: // stackoverflow.com/q/10644495/328397 – LamonteCristo
ràng buộc này sẽ là thừa, vì đây là mặc định ... –