📄 14-28.txt
字号:
/* 范例:14-28 */
#include <iostream.h>
class A
{
public:
int *a;
A():a(new int(100))
{cout <<"调用构造函数" <<endl;}
A(const A &obj):a(obj.a)
{cout <<"调用复制构造函数" <<endl;}
};
void main()
{
A *ptr;
ptr = new A;
A obj2(*ptr);
cout <<"delete ptr前ptr->a的地址是" <<ptr->a <<"\tptr->a=" \
<<*ptr->a <<endl;
cout <<"delete ptr前obj2.a的地址是" <<obj2.a <<"\tobj2.a=" \
<<*obj2.a <<endl;
delete ptr;
cout <<"delete ptr后ptr->a的地址是" <<ptr->a <<"\tptr->a=" \
<<*ptr->a <<endl;
cout <<"delete ptr后obj2.a的地址是" <<obj2.a <<"\tobj2.a=" \
<<*obj2.a <<endl;
getchar();
}
程序执行结果:
调用构造函数
调用复制构造函数
delete ptr前: ptr->a的地址是00682F28 ptr->a=100
delete ptr前: obj2.a的地址是00682F28 obj2.a=100
delete ptr后: ptr->a的地址是00682F34 ptr->a=13
delete ptr后: obj2.a的地址是00682F28 obj2.a=100
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -