Skocz do zawartości

[Delphi] Czy klasa dziedziczy po interfejsie


Force

Polecane posty

Co prawda tytuł wiele mówiący, ale wyjaśnię bardziej. Otóż nie mogłem znaleźć i nawet nie wiem czy się da, aby jak dostaje klasę to czy się da sprawdzić czy dziedziczy po jakimś interfejsie.

Problem jest taki że mam klasę A, jest ona bazowa dla wszystkich klas i mam klasę B, która dziedziczy po klasie A oraz po interfejsie I.

Oraz mam funkcję, która jako parametr dostaje klasę A, ale mogę do niej wysłać też przecież klasę B i chciałbym móc w tej funkcji sprawdzić czy klasa jaką dostaję dziedziczy po I. nie mogę sprawdzić czy jest to klasa B, bo po klasie A nei dziedziczy tylko B, ale C,D,E,F, itd. i część z nich też dziedziczy interfejs I, a nie chcę mieć wielkiego if-a z is-ami, bo mogę kiedyś dodać nową klasę co dziedziczy po I to musiałbym wszędzie te if-y szukać. wolałbym też aby nie było takie rozwiązanie, że w klasie A, trzymam flagę, która mówi czy dziedziczy czy nie:D

Czyli w dużym skrócie szukam odpowiednika operatora is dla interfejsów. Odpowiednik operatora as też mile widziany:)

Baza tysięcy lotnisk: http://airportsbase.com

Link do komentarza
Udostępnij na innych stronach

Dzięki za pomocy naukowe (:D) przeglądnę, wydaje mi się, że to jest to, tylko szkoda, że nie ma wielokrotnego dziedziczenia klas, bo akurat tu by mi się przydało, wydaje mi się bardziej przyjemne niż interfejsy. (oczywiście w tym przypadku, bo wiem jak to c++ rozwiązał i jak się zrobie za skomplikowanie to trzeba też się pomęczyć ze słówkami virtual, listami inicjacyjnymi itp., no ale ja chce prostą rzecz)

Baza tysięcy lotnisk: http://airportsbase.com

Link do komentarza
Udostępnij na innych stronach

Zarchiwizowany

Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.

×
×
  • Utwórz nowe...