Tak jak w temacie. Czyli jak? Że new nazwa_klasy nazwa_zmiennej
? XD
0
1
MojaKlasa* cos = new MojaKlasa;
0
Dobra to chcialem wiedzieć, dzieki :D a przy usuwaniu jej? delete MojaKlasa
czy delete cos
?
1
aksjio napisał(a):
a przy usuwaniu jej?
delete MojaKlasa
czydelete cos
?
Wyobraź sobie, że masz taki kod:
MojaKlasa* cos = new MojaKlasa;
MojaKlasa* innecos = new MojaKlasa;
Teraz jak chcesz usunąć cos
to zrobisz delete cos
czy delete MojaKlasa
?
0
Wolałem się jednak upewnić ;) Dzieki za szybką pomoc.
1
jak to pytanie cpp to
auto x = std::make_unique<MojaKlasa>(parametry konstruktora);
// lub
auto x = std::make_shared<MojaKlasa>(parametry konstruktora);
i nie będziesz musiał używać żadnych new i delete
0
@gośćabc muszę użyć new i delete... a wracając do tematu, jak w dekonstruktorze usunąć tą zmienną cos
?
0
http://wklej.org/id/1587776/ i wywala mi że 'b' was not declared in this scope.
int main
{
...
Book* b= new Book(a,z,c,d,e);
b->show();
delete b;
}
Book::~Book()
{}
Tak naprawdę destruktora nie potrzebujesz w tym przypadku, bo nie ma nic do roboty.
0
No dobra to wywale ten dekonstruktor i mam nadzieje że mi zaliczy bo kazała usunąć to w dekonstruktorze.