Wskaźnik do obiektu wywołany na stercie

0

Potrzebuję napisać program z jedną klasą. W klasie zdefiniować metodę. W funkcji main() wywołać metodę obiektem, wskaźnikiem do obiektu zdefiniowany na stercie.
Nie do końca wiem, czy ten kod mam dobry.

class klasa{public:int metoda();};
int main()
{
   	klasa obiekt;
   	obiekt.metoda();
   	klasa* wskaznik = new klasa();
   	wskaznik->metoda();
}
int klasa::metoda(){return 0;} 
0

Ogólnie tak.

Jest tylko jedna mała rzecz, na którą warto zwrócić uwagę.

klasa* wskaznik = new klasa();

Jeśli chcesz korzystać z konstruktora bez parametrowego, to lepiej pomiń nawiasy:

klasa* wskaznik = new klasa;

W tym przypadku nie ma znaczenia, ale jeśli wszędzie będziesz pisał klasa() to kiedyś możesz natrafić na jeden bardzo dziwny i nieprzyjemny błąd. Po szczegóły odsyłam do googla pod hasłem "c++ the most vexing parse".

0

na pewno brakuje

delete wskaźnik;

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