Wątek przeniesiony 2014-11-13 13:52 z C/C++ przez ŁF.

Jak przekazać wskaźnik jako referencję

0

Cześć,

Jeżeli mam funkcję:

int func(TYP &zm)

to bez problemu mogę ją wywołać:

TYP x;
func(x);

A co musiałbym zrobić aby na wejście func przekazać wskaźnik?

TYP *x;
func(x);

Powyższe się nie skompiluje - invalid initialization of reference of type ‘N&’ from expression of type ‘N*’
Mogę jakoś ten x jakoś przekonwertować/rzutować?

Jak na razie sobie z tym radziłem zmieniając deklarację funkcji:

int func(TYP &zm)

na

int func(TYP *zm)

i modyfikując resztę odpowiednio, ale nie zawsze mogę zmienić deklarację funkcji i pewnie jest jakieś sensowniejsze rozwiązanie tego problemu.

3

func(*x);

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