Article View: pl.comp.lang.delphi
Article #346321Re: Referencja klasy - Delphi
From: J-23
Date: Fri, 09 Feb 2018 10:39
Date: Fri, 09 Feb 2018 10:39
59 lines
3193 bytes
3193 bytes
W dniu 09.02.2018 o 09:54, Roman Tyczka pisze: > On Fri, 9 Feb 2018 02:29:59 +0100, J-23 wrote: > >> Nic się na grupie za specjalnie nie dzieje a mi potrzeba odświeżyć >> pamięć. Bo teraz mało 'skrobie' Delphi/Lazarusie >> >> mamy klasę SkinManager >> >> type >> TSkinManager = class; >> >> >> type >> TSkinManagerClass = of TSkinManager - referencje do klasy > > > Jeśli już to > > TSkinManagerClass = class of TSkinManager; Tak masz rację o to mi chodziło > >> mamy klasę Skins >> >> type >> TSkins = class(TComponent) - leży na każdej formie >> >> I właśnie o referencje mi chodzi, czy dobrze rozumiem, każdy Nowy obiekt >> utworzony z klasy TSkins posiada dostęp do referencji TSkinManagerClass >> i teraz załóżmy że w TSkinManager posiadam metode do zmiany skórki i >> wedłg tego co ja myśle wywołując tę metodę zmienią się skóry na >> wszystkich formatkach. > > Ja nie bardzo rozumiem co kombinujesz. W każdym razie nie ma żadnego > związku pomiędzy klasami TSkinManager i TSkins (przynajmniej w tym kodzie > jaki tu wkleiłeś). A to czy każdy obiekt TSkins posiada dostęp do typu > klasowego TSkinManagerClass zależy od tego czy ten typ będzie publiczny i > widoczny (w zasięgu obiektu powstałego z klasy TSkins). Ponadto fakt, że > TSkinManagerClass to typ klasowy od typu TSkinManager nie powoduje w żaden > magiczny sposób, że zmiana skórki w jednej klasie rozpropaguje się po > wszystkich. Bo niby jakim cudem? > Tak naprawdę typ klasowy pozwala jedynie przechowywać typ klasy (lub klas > potomnych) i np. z niego tworzyć instancje, różne, w zależności od > przypisanego typu właściwego. > >> A skoro tak - o ile nie jest błędne moje myślenie to wytłumaczcie mi >> czym ta konstrukcja różni się od Interfejsu bo normalnie to do tego >> zadania właśnie użył bym interfejsu, który by zdał 100% egzamin czy ta >> konstrukcja ma za zadanie właśnie wyeliminować użycie interfejsu? Czy >> może ma jeszcze jakieś właściwości? > > A już co z tym ma wspólnego interfejs to kompletnie nie wiem. > Fakt pomieszałem ale już rozumiem. Dzięki za informacje Pozdrawiam
Technical Details
Message-ID:
<5a7d7a4a$0$673$65785112@news.neostrada.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mailReferences:
<5a7cf997$0$659$65785112@news.neostrada.pl> <q3wvmypqdrqv$.dlg@tyczka.com>Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!goblin2!goblin1!goblin.stu.neva.ru!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-a-01.news.neostrada.pl!news.neostrada.pl.POSTED!not-for-mail Subject: Re: Referencja klasy - Delphi Newsgroups: pl.comp.lang.delphi References: <5a7cf997$0$659$65785112@news.neostrada.pl> <q3wvmypqdrqv$.dlg@tyczka.com> From: J-23 <Baczeklu@poczta.fm> Date: Fri, 9 Feb 2018 11:39:06 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.6.0 MIME-Version: 1.0 In-Reply-To: <q3wvmypqdrqv$.dlg@tyczka.com> Lines: 59 Message-ID: <5a7d7a4a$0$673$65785112@news.neostrada.pl> Organization: Telekomunikacja Polska NNTP-Posting-Host: 188.146.99.229 X-Trace: 1518172746 unt-rea-a-01.news.neostrada.pl 673 188.146.99.229:22084 X-Complaints-To: abuse@news.neostrada.pl Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit