Klasa bazowa dla List

0

Cześć, mam takie pytanie. Załóżmy, że mam kilka klas pochodnych, które mają mieć listę elementów odpowiedniego typu:

 
class BaseClass<T>
{
  List<T> m_list;
}

class IntClass: BaseClass<int>
{

}

class DoubleClass: BaseClass<double>
{

}

Teraz chciałbym móc w jakiejś metodzie przekazać obiekt dziedziczący po klasie BaseClass:

 
void DoSomething(BaseClass obj)
{
}

Oczywiście tak się nie da. Nie chcę też, żeby metoda DoSomething była generyczna. W jaki sposób można coś takiego osiągnąć?

1
void DoSomething(BaseClass<T> obj)
{
}
1

Istnieje jeszcze jeden sposób rozwiązania tego problemu, jako alternatywa dla powyższego rozwiązania: implementacja interfejsu i przekazywanie jako argumentu jego referencji

1 użytkowników online, w tym zalogowanych: 0, gości: 1