📄 demo_object_new_delete_2.cpp
字号:
//***************************************************
// new根据参数匹配的原则调用构造函数。
//***************************************************
# include <iostream.h>
# include <stdlib.h>
# include <conio.h>
class Point
{
public:
Point(int xx=0,int yy=0)
{
X=xx;
Y=yy;
cout<< "Constructor called."<<endl;
}
~Point()
{
cout<<"Destructor called."<<endl;
}
int GetX() { return X; }
int GetY() { return Y; }
void Move(int x,int y) { X=x; Y=y; }
private:
int X,Y;
};
int main()
{
cout<<"new delete object:"<<endl;
// Point *Ptr=new Point(1,2); // new调用有形参构造函数
Point *Ptr=new Point; // 没有默认或无形参构造函数,因new无法调用而报错。
if(Ptr==NULL)
{
cout<<"Can't allocate more memory,terminating.\n";
exit(1);
}
getch();
delete Ptr;
return 0;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -