(C++) Problem ze składnią: symbol *&

0

Mam mały problem ze zrozumieniem co oznacza zapis *& w nagłówku funkcji:

void insert(bnode *&root);

czy te operatory się nazwajem nie znoszą?

0

nie? to referencja na wskaźnik (pozwala zmieniać wskaźnik wewnątrz funkcji)
niedawno był identyczny temat tutaj :/

0

A moglbys mi wytlumaczyc jak to dziala ;p ? w koncu ten operator "&" służy do wyłuskania adresu obiektu przed którym stoi a * jest deklaracja wskaznika? Czyli np. a *&x - adres x jest wskaznikiem do obiektu typu a?

0

co? nie służy tutaj do wyłuskania adresu, tak samo jak gwiazdka nie służy tutaj do dereferencji
poczytaj o referencji

x jest referencją na wskaźnik do obiektu a
możesz to zamienić na wskaźnik na wskaźnik (podwójna gwiazdka), ale wtedy do kodu dochodzą dodatkowe gwiazdki

0

ok czyli tutaj operator & jest tak jakby pascalowym var?

0

dokładnie tak

0

dzieki wielkie :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1