Article View: pl.comp.objects
Article #12223Poczatkujacy w programowaniu OO
From: Rafal
Date: Sun, 28 Aug 2005 12:14
Date: Sun, 28 Aug 2005 12:14
65 lines
2766 bytes
2766 bytes
Dopiero zaczynam zabawe z programowaniem obiektowym i mam narazie takie
pytanie:
Chce sobie caly program zamknac w jednym obiekcie, a pozniej w programie
glownym wywolac raptem pare linijek.
Robie wiec tak ze tworze biblioteke w ktorej mam definicje wszystkich klas
potrzebnych mi do stworzenia tej jednej.
Mam taki uklad:
klasa PROGRAM zawiera m.in. obiekty klasy OB1 i OB2
klasa OB1 zawiera obiekty klas OB1-1 i OB1-2
natomiast klasa OB1-1 zawiera obiekty klas OB1-1-1 i OB1-1-2
PROGRAM
| \
| \
OB1 OB2
/ \
OB1-1 OB1-2
/ \
OB1-1-1 OB1-1-2
(To nie jest dziedziczenie tylko uklad obiektow)
Program glowny wyglada mniej wiecej tak:
//------------------------------------------
#include "biblioteka.h"
int main() {
PROGRAM program1;
program1.run();
return 0;
}
//------------------------------------------
Chcialbym teraz w pewnej metodzie klasy OB1-1-1 odwolac sie do obiektu klasy
OB2 znajdujacego sie w strukturze jak powyzej.
Nie moge tego zrobic gdyz w bibliotece nie istnieje obiekt klasy PROGRAM
wiec i brak obiektu wchodzacego w jego sklad (klasy OB2). Odwolanie
PROGRAM::OBiekt2 nie daje mi pelnych mozliwosci.
Jak to sie powinno najladniej robic? :)
Czy z najwyzszych w hierarchi obiektow przekazywac nizej informacje o
OBiekt2 (wskaznik, referencja) w liscie argumentow metod? <chyba troche
niejasno sie wyrazam>
Praktycznie w kazdej klasie korzystam z obiektu PROGRAM::OBiekt2 wiec bylby
on przekazywany w prawie kazdym wywolaniu metod tych klas - troche
niweygodne.
Ps. Czy taki styl programowania (zamykanie calego programu w jednej klasie
ktora ma raptem pare metod (1, 2, 3), w ktorych korzysta sie z obiektow
znajdujacych sie krok nizej w hierarchi, ktore to obiekty wywoluja
znajdujace sie jeszcze nizej, itd ..., to dobry styl programowania?
Pozdrawiam
Rafal
Technical Details
Message-ID:
<des9dq$27d$1@nemesis.news.tpi.pl>Path:
mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mailShow Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!newsfeed.gazeta.pl!news.onet.pl!newsfeed.tpinternet.pl!atlantis.news.tpi.pl!news.tpi.pl!not-for-mail From: "Rafal" <rl@nospam.adrem.pl> Newsgroups: pl.comp.objects Subject: Poczatkujacy w programowaniu OO Date: Sun, 28 Aug 2005 14:14:46 +0200 Organization: tp.internet - http://www.tpi.pl/ Lines: 68 Message-ID: <des9dq$27d$1@nemesis.news.tpi.pl> NNTP-Posting-Host: pb37.chelm.cvx.ppp.tpnet.pl X-Trace: nemesis.news.tpi.pl 1125230842 2285 213.77.195.37 (28 Aug 2005 12:07:22 GMT) X-Complaints-To: usenet@tpi.pl NNTP-Posting-Date: Sun, 28 Aug 2005 12:07:22 +0000 (UTC) X-Priority: 3 X-MSMail-Priority: Normal X-Newsreader: Microsoft Outlook Express 6.00.2600.0000 X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2600.0000 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit