Struktury wiązane
Ostatnio zmodyfikowano 2013-12-22 19:58
avaqe Temat założony przez niniejszego użytkownika |
Struktury wiązane » 2013-12-22 19:06:24 Witam mam pewien problem i pytanie... Powiedzmy chcę dodać element (nazwa struktury Tab) struct Tab { int number; Tab * next; Tab * prev; }; Tab * stackBeg1; Tab * stackEnd1;
void insert1( int x ) { if( stackBeg1 == NULL ) { stackBeg1 = new Tab; stackBeg1->number = x; stackBeg1->next = NULL; stackBeg1->prev = NULL; stackEnd1 = stackBeg1; } else { Tab * pom = new Tab; pom->number = x; pom->next = stackBeg1; pom->prev = NULL; stackBeg1->prev = pom; stackBeg1 = pom; pom = NULL; } }
insert1( digit ); to działa dobrze Jednak jak chcę zrobić to ze wskaznikami jako argumenty to nie dziala. void insert1( int x, Tab * stack1 = stackBeg1, Tab * stack2 = stackEnd1 ) { if( stack1 == NULL ) { stack1 = new Tab; stack1->number = x; stack1->next = NULL; stack1->prev = NULL; stack2 = stack1; } else { Tab * pom = new Tab; pom->number = x; pom->next = stack1; pom->prev = NULL; stack1->prev = pom; stack1 = pom; pom = NULL; } }
insert1( digit1 );
insert1( digit1, stackBeg1, stackEnd1 ); Tu moje pytanie, czy można to jakoś zrobić w ten sposób, czy raczej nie da rady? |
|
Monika90 |
» 2013-12-22 19:46:47 Modyfikujesz lokalne kopie wskaźników więc zmiany te nie są widoczne na zewnątrz funkcji - przekazuj wskaźniki przez referencje. |
|
avaqe Temat założony przez niniejszego użytkownika |
» 2013-12-22 19:58:58 Dzięki wielkie!!! O to mi chodziło, aż wstyd że się samemu nie domyśliłem :) |
|
« 1 » |