[ Alisa @ 10.02.2004. 09:53 ] @
Get method c++.net
Unutar klase imam private varijablu koja je pokazivac na objekat druge klase:
class Neka
{
private:
UcpHeader * header;
public:
UcpHeader * GetHeader();

};

Ne znam kako da implementiram ovaj get method,
Pokusala sam ovako:
UcpHeader * Neka::GetHeader()
{
return header;
}

ali javlja mi neke greske.



Jos me zanima da li ako napravim pokazivac na na klasu Neka unutar neke trece klase mogu li preko njega pristupiti header-u i njegovim methodama.
Malo sam se zapetljala ali nadam se da me kontate.

[ havramm @ 10.02.2004. 14:32 ] @
Citat:
ali javlja mi neke greske.

Koje greske?
Citat:
Jos me zanima da li ako napravim pokazivac na na klasu Neka unutar neke trece klase mogu li preko njega pristupiti header-u i njegovim methodama.
Malo sam se zapetljala ali nadam se da me kontate.

A sto ne bi moglo?
Code:

class Treca
{
private:
    Neka* neka;
public:
    Neka* GetNeka() {return this->neka;};
};
...
Treca* treca = new Treca();

treca->GetNeka()->GetHeader()->TamoNekaFunkcija();
...

...ili unutar funkcije clanice klase Treca:
Code:

void Treca::FunkcijaClanica()
{
    this->neka->GetHeader()->TamoNekaFunkcija();
}


Normalno, pretpostavka je da je pokazivac na klasu Neka unutar Trece klase "tamo negde" inicijalizovan, inace ce da pukne...
Takodje, Treca MORA da zna kako izgleda Neka, pa moras da je definises pre Trece ili bar da je deklarises
Code:

class Neka;

class Treca
{
   ... koristis Neka...
}


Mozda sam nesto propustio ili pogresno napisao, ali mislim da je to sustina. Zaboravio sam vec te cake kod C++-a, nisam ga koristio vec skoro 3-4 godine...