[C++] Zmiana wskaźnika na obiekt
Ostatnio zmodyfikowano 2014-03-26 13:05
eloKretyn Temat założony przez niniejszego użytkownika |
[C++] Zmiana wskaźnika na obiekt » 2014-03-25 23:30:28 Witam, aby przedstawić mój problem przedstawię kod inny niż mój, lecz lepiej przedstawiający problem. class klasa { public: char a; klasa * next; };
void funkcja( klasa * el ) { el = el->next; }
int main() { klasa * a = new klasa(); a->next = new klasa(); a->a = '1'; a->next->a = '2'; funkcja( a ); cout << a.a; return 0; }
Mianowicie chciałbym, aby po wykonaniu funkcji, wskaźnik 'a', wskazywał na a->next. Otóż rozumiem jak sprawa ma się w zwykłych zmiennych - funkcja nie zmieni zmiennej bo tworzy tylko jej instancję, chyba że prześlemy do funkcji wskaźnik na zmienną. Teraz mogę zmienić sam obiekt, ale nie przekierować wskaźnik. Wiem, że mogę w funkcji (typ klasa *) zwrócić wskaźnik i przypisać go do 'a', lecz takie rozwiązanie nie pasuje do mojego programu. Czy jest jakakolwiek możliwość przekierowania wskaźnika w samej funkcji? Mam nadzieję, że zrozumiecie mój problem i że istnieje rozwiązanie. Z góry dziękuję za odpowiedzi i pomoc. |
|
maly |
» 2014-03-26 06:51:44 void funkcja( klasa *& el ) . cout << a.a; nie kropeczka tylko strzałeczka. |
|
eloKretyn Temat założony przez niniejszego użytkownika |
» 2014-03-26 13:05:33 Niesamowite! Jestem bardzo wdzięczny. Dzięki Mały. |
|
« 1 » |