Iostream szerint a mutatótömb első elemét én így nem törlöm miért? :D delete pArray;
//main.cpp
# include <iostream>
typedef unsigned short ushort;
typedef unsigned int uint;
using namespace std;
class Mammal {
public:
Mammal() { cout <<"Mammal Konstruktor \n"; }
Mammal(const Mammal &rhs);
virtual ~Mammal() { cout <<"Mammal virtual Destruktor \n"; }
virtual Mammal* Copy()const { return new Mammal(*this); }
void SetAge(short age) { itsAge = age; }
short GetAge()const { return itsAge; }
protected:
short itsAge;
private: };
class Dog: public Mammal {
public:
Dog(): Mammal() { cout <<"Dog Konstruktor \n"; }
Dog(const Dog &rhs);
virtual ~Dog() { cout <<"Dog virtual Destruktor \n"; }
virtual Mammal* Copy()const { return new Dog(*this); }
protected:
private: };
Mammal::Mammal(const Mammal &rhs): itsAge(rhs.GetAge()) {
cout <<"Mammal copy Konstruktor \n"; }
Dog::Dog(const Dog &rhs): Mammal(rhs) {
cout <<"Dog copy Konstruktor \n"; }
int main() {
const Mammal *const pMammal = new Dog;
Mammal *pArray[1] = {pMammal->Copy()};
delete pArray;
delete pMammal;
return 0; }
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!