Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Hitno! - Definisanje tacno jednog objekta klase

[es] :: C/C++ programiranje :: Hitno! - Definisanje tacno jednog objekta klase

[ Pregleda: 3708 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

Robinsonk@

Član broj: 14124
Poruke: 41
*.niksic.cg.yu



Profil

icon Hitno! - Definisanje tacno jednog objekta klase27.11.2003. u 23:25 - pre 248 meseci
Kako da deklarisem klasu tako da se moze definisati tacno jedan objekat te klase?! Znam da treba uvesti neki brojac, ali mi treba tacno kako da to izvedem i to do ujutro do 11.

 
Odgovor na temu

Cybernoid II

Član broj: 14852
Poruke: 528

Sajt: www.youtube.com/watch?v=7..


+1 Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase27.11.2003. u 23:31 - pre 248 meseci
http://www.codeproject.com/cpp/singletonrvs.asp
http://gethelp.devx.com/techtips/cpp_pro/10min/10min0200.asp
#!/usr/bin/basho
mv frog ancient_pond
echo "Splash!"
 
Odgovor na temu

filmil
Filip Miletić
Oce Technologies B.V., inženjer
hardvera
Arcen, NL

Član broj: 243
Poruke: 2114
*.adsl.zonnet.nl

Jabber: filmil@jabber.org
ICQ: 36601391


+3 Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase27.11.2003. u 23:31 - pre 248 meseci
Citat:
Robinsonk@:
Kako da deklarisem klasu tako da se moze definisati tacno jedan objekat te klase?! Znam da treba uvesti neki brojac, ali mi treba tacno kako da to izvedem i to do ujutro do 11.

Ne treba uvesti nikakav brojač. U pitanju je takozvani singleton design pattern.

Ideja je da se napravi klasa sa privatnim konstruktorom i u njoj tzv. Factory metoda koja deklariše jedan statički primerak te klase. Nema brojača, nema ničega. Potraži na guglu gore navedene ključne reči, čisto da ne ispadne da prepisuješ, već da ipak stoji i uložen trud. Vikipedija na primer daje spisak design patterna pa možeš potražiti i tamo.

f
 
Odgovor na temu

Robinsonk@

Član broj: 14124
Poruke: 41
*.niksic.cg.yu



Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase27.11.2003. u 23:38 - pre 248 meseci
Hvala obojici. Sjetila sam se da treba konstruktor da bude privatan, ali sam mislila da je neophodan brojac. Sad cu da pogledam.
Hvala.
 
Odgovor na temu

Dragi Tata
Malo ispod Kanade

Član broj: 1958
Poruke: 3906
..ndg-pm4-2.dialup.nethere.net



+6 Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase28.11.2003. u 00:17 - pre 248 meseci
Verovatno najkompletnija implementacija Singletona u C++u može se naći u Loki biblioteci:

http://sourceforge.net/projects/loki-lib
 
Odgovor na temu

NastyBoy
Bojan Nastic
UK

Član broj: 12041
Poruke: 895
*.in-addr.btopenworld.com



+4 Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase28.11.2003. u 08:37 - pre 248 meseci
Evo kratkih makroa za definisanje singletona. Ovo nije najbolje resenje, ali moze da posluzi...

#define DECLARE_SINGLETON(n) static n& GetInstance(); private: n(); virtual ~n(); public:

#define IMPLEMENT_SINGLETON(n) n& n::GetInstance() { static n instance; return instance; };

Stavi jedan u .h fajl, implementaciju u .cpp i to ti je to :)
 
Odgovor na temu

Robinsonk@

Član broj: 14124
Poruke: 41
*.niksic.cg.yu



Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase28.11.2003. u 08:59 - pre 248 meseci
A kako da kreiram tacno n objekata? Tada mi pretpostavljam treba brojac, u konstruktoru valjda?
 
Odgovor na temu

NastyBoy
Bojan Nastic
UK

Član broj: 12041
Poruke: 895
*.in-addr.btopenworld.com



+4 Profil

icon Re: Hitno! - Definisanje tacno jednog objekta klase28.11.2003. u 09:52 - pre 248 meseci
Pojasni malo "n objekata"...
Mozes da stavis nesto kao "static int m_nObjectCount" u klasu da pratis broj instanci, ali tvoj prvi zhtev i ovaj nemaju mnogo dodirnih tacaka.
Singleton ti je kao pomocno sredstvo koje ti omogucava da ne brines mnogo oko toga ko je i kada instancirao klasu. Uvek ces dobiti istu instancu kad pokusas da kreiras novu. Ali, ako kreiras "n" objekata, sta ocekujes da dobijes kad instanciras n+1 objekat? Pointer na vec postojeci (koji?) objekat ili NULL? Zavisi sta hoces da postignes, verovatno ti je najbolje da za tu klasu obezbedis i neku vrstu container klase koja bi cuvala pointere na instancirane objekte...
 
Odgovor na temu

[es] :: C/C++ programiranje :: Hitno! - Definisanje tacno jednog objekta klase

[ Pregleda: 3708 | Odgovora: 7 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.