Witam serdecznie. Mam do wykonania takie zadanie:
Zrobiłem coś takiego, chciałbym prosić was abyście sprawdzili kod i poprawili mnie. Jest to dla mnie bardzo ważne, a nie wydaje mi się abym coś tu mógł dalej samemu zdziałać. Pozdrawiam
#include <cstdlib>
#include <iostream>
using namespace std;
class Osoba {
public:
char* imie;
int wiek;
Osoba(){
cout << "Konstruktor()" << imie << endl;
imie = imie;
wiek = wiek;
}
Osoba(char* imie, int wiek) : imie(imie), wiek(wiek)
{
cout << "Konstruktor(imie, wiek): " << imie << endl; // lista inicjalizacyjna
}
Osoba(const Osoba& os){
imie = os.imie;
wiek = os.wiek; //konstruktor kopiujacy
}
~Osoba(){
cout << "Destruktor(): " << imie << endl << "Zwolniono pamiec" << endl;
delete imie;
imie="";
wiek=0;
}
friend void show(Osoba* bin);
};
void show(Osoba* bin){
cout << "Imie: " << bin->imie << endl;
cout << "Wiek: " << bin->wiek << endl;
}
int main(int argc, char *argv[])
{
Osoba ja;
ja.imie = "Sebastian";
ja.wiek = 21;
Osoba* ja2 = new Osoba("Sebastian", 21);
show(ja2);
//wskaznik do obiektu
Osoba* &ref = ja2;
Osoba* ja3(ref);
show(ja2);
show(ja3);
ja2->~Osoba();
show(ja3);
system("PAUSE");
return EXIT_SUCCESS;
}