Force Napisano Grudzień 12, 2007 Zgłoś Share Napisano Grudzień 12, 2007 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 More sharing options...
KKKas Napisano Grudzień 12, 2007 Zgłoś Share Napisano Grudzień 12, 2007 A od czego jest QueryInterface? ;-) Daj w ogóle jakiś kod przykładowy z zachowaniem sensu problemu żeby można było potestować. ҉ Link do komentarza Udostępnij na innych stronach More sharing options...
Toster Napisano Grudzień 12, 2007 Zgłoś Share Napisano Grudzień 12, 2007 mozesz sprobowac sprawdzic tez przez operator is (strzelam nie probowalem) Always Dark<br /> Link do komentarza Udostępnij na innych stronach More sharing options...
Force Napisano Grudzień 12, 2007 Autor Zgłoś Share Napisano Grudzień 12, 2007 To muszę sprawdzić. A mnie zawsze ciekawiło po co mam pisać tę funkcję, albo AddRef, Release. To przetestuje to, no i może przeczytam po co są te funkcje z interfejsów:D Baza tysięcy lotnisk: http://airportsbase.com Link do komentarza Udostępnij na innych stronach More sharing options...
KKKas Napisano Grudzień 12, 2007 Zgłoś Share Napisano Grudzień 12, 2007 Poczytaj: http://delphi.org.pl/zlot/2006/po/lecture.php?lecid=c3 Dokładniej: http://delphi.org.pl/zlot/2006/po/lectures...-interfejsy.zip Polecam, można się sporo dowiedzieć o interfejsach w Delphi ;-) ҉ Link do komentarza Udostępnij na innych stronach More sharing options...
Force Napisano Grudzień 13, 2007 Autor Zgłoś Share Napisano Grudzień 13, 2007 Dzięki za pomocy naukowe () 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 More sharing options...
Polecane posty
Zarchiwizowany
Ten temat jest archiwizowany i nie można dodawać nowych odpowiedzi.