На данный вопрос уже ответили:
Здравствуйте! Подскажите как реализовать абстрактный List<> который содержит интерфейсы? Компилятор ругается на get { return arr; }
якобы разные типы.
abstract class TestClass
{
protected abstract List<IMyClass> ListWithInterface { get; }
}
class TestClass2 : TestClass
{
List<MyClass> arr = new List<MyClass>();
protected override List<IMyClass> ListWithInterface
{
get { return arr; }
}
}
interface IMyClass
{
int A { get; }
}
class MyClass : IMyClass
{
int a;
int IMyClass.A
{
get { return a; }
}
public MyClass(int a)
{
this.a = a;
}
}
Спасибо за ссылки, решил с помощью обобщения.
class Program
{
static void Main(string[] args)
{
TestClass2 testClass2 = new TestClass2();
testClass2.Print();
}
}
abstract class TestClass <T> where T : IMyClass
{
protected abstract List<T> ListWithInterface { get; }
internal void Print()
{
for(int i = 0; i < ListWithInterface.Count; i++)
Console.WriteLine(ListWithInterface[i].A);
}
}
class TestClass2 : TestClass<MyClass2>
{
List<MyClass2> arr = new List<MyClass2>() { new MyClass2(5) };
protected override List<MyClass2> ListWithInterface
{
get { return arr; }
}
}
interface IMyClass
{
int A { get; }
}
class MyClass2 : IMyClass
{
int a;
int IMyClass.A
{
get { return a; }
}
public MyClass2(int a)
{
this.a = a;
}
}
Оборудование для ресторана: новинки профессиональной кухонной техники
Частный дом престарелых в Киеве: комфорт, забота и профессиональный уход
В своей программе мне надо запускать одно и то же приложение например так:
Работаю над обновлением файлов, список которых получаю по ссылке в json форматеПри загрузке приложения, я получаю callback, откуда составляю список...
Объясните пожалуйста на пальцахУ меня есть маска в двоичном представлении 0000 0100, я хочу во время когда пользователь вводит число, например...
Не могу разобраться как добавить мьютекс,в форме есть 6 pictureBox-ов, каждые t секунды меняет цвет первой части, в ответ на изменение цвета в первой...