#include<iostream>
using namespace std;
class Monkey{
public:
Monkey () {cout <<'M';}
Monkey (char n){cout<<n;}
~Monkey () {cout<<'Y';}
} ;
int main(){
Monkey p1,*p2;
p2=new Monkey ('x');
delete p2;
return 0;
}
#include<iostream>
using namespace std;
class Monkey{
public:
Monkey () {cout <<'M';}
Monkey (char n){cout<<n;}
~Monkey () {cout<<'Y';}
} ;
int main(){
Monkey p1,*p2;
p2=new Monkey ('x');
delete p2;
return 0;
}
输出MxY
Monkey p1,*p2;定义了一个p1对象,会调用默认构造函数,p2指针,不会调用构造函数;输出M
p2=new Monkey ('x');new一个Monkey 对象,会调用指定构造函数,并让p2指向该对象;输出x
delete p2;删除对象,调用类的析构函数;输出Y