#include <cstdlib>
#include <iostream>
using namespace std;
class Q
{public:
int x;
char y;
int z;
~Q()
{
}
};
int main(int argc, char *argv[])
{
Q *a=new Q;
a->x=9;
a->y='T';
a->z=4;
cout<<a->x<<" "<<a->y<<" "<<a->z<<endl;
delete a;
cout<<a->x<<" "<<a->y<<" "<<a->z<<endl;
system("pause");
return 0;
}
Witam, mam pytanko.
Nie rozumiem do końca jak operować pamięcią dynamiczną i jak ją potem usuwać.
W kodzie mamy przykładową klasę Q z trzema polami.
Czy tworząc obiekt klasy przez wskaźnik tak jak w kodzie jest to przydział pamięci dynamicznej ?
Jeśli nie to jak powinienem to zrobić?
I jak skutecznie usunąć potem cały obiekt bo w ten sposób usuwa mi tylko pierwsze z jego pól i nie wiem jak dostać się do pozostałych. Pewnie za pomocą destruktora ale nie chce mi to działać i nie wiem jak się do tego zabrać dlatego jest on pusty.
Prosił bym o pomoc, wytłumaczenie mi tego i uzupełnienie kodu.