Mi a különbség a másoló konsturktor és a másoló értékadás között c++ ban? Mikor melyiket használom?
Figyelt kérdés
X(const X&); \\ másoló konstr.
X& operator=(const X&); \\ másoló értékadás
2010. szept. 30. 14:56
1/2 anonim válasza:
Konstruktor akkor és csak akkor hívódik, amikor egy objektum létrejön. Másoló~ pedig akkor, ha egy ugyanolyan típusú paramétert kap a konstruktorban.
"Másoló értékadás" nem létezik, csak simán értékadó operátor (az operator=). Ezt meg akkor, ha nem-inicializálás folyamán (tehát amikor NEM egy újonnan létrejövő objektumról van szó) értéadást látsz.
Tehát
X x; <- default konstruktor
X y(x); <- copy konstruktor
X z = x; <- szintén
y = z; <- operator=
2/2 A kérdező kommentje:
köszi
2010. okt. 1. 11:13
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!