Witam potrzebuję zmienić wskazanie wskaźnika o nowo utworzony obiekt, a nie wiem jak to zrobić, przejrzałem różne strony, ale nie znalazłem odpowiedzi, próbowałem różnych kombinacji własnych pomysłów, ale żaden nie działa, zatrzymałem się widocznym niżej pomyśle, proszę o wskazanie błędu i jeśli by nie było problem choć krótkie wyjaśnienie dlaczego tak a nie inaczej byłbym bardzo wdzięczny.
#include <iostream>
#include <memory>
struct wezel
{
int wartosc;
std::unique_ptr<wezel> nastepny;
wezel() { wartosc = 0;
nastepny = nullptr;
}
};
void dodaj(std::unique_ptr<wezel> &w, int liczba)
{
std::unique_ptr<wezel> nowy{ new wezel };
wezel*pop;
pop = nowy.get();
w->nastepny = pop;
}
int main()
{
std::unique_ptr<wezel> liczba{ new wezel };
dodaj(liczba, 1);
return 0;
}