码迷,mamicode.com
首页 > 其他好文 > 详细

自考新教材-p159

时间:2020-02-04 13:45:17      阅读:58      评论:0      收藏:0      [点我收藏+]

标签:names   end   his   pointer   默认   构造   mes   str   com   

源程序:

#include<iostream>
using namespace std;

class pointer
{
public:
int a;
int *p; //指向整型数的指针
pointer()
{
a=100;
p=new int(10);
}
pointer(const pointer &tempp)
{
if(this != &tempp)
{
a=tempp.a;
p=tempp.p;
}
}
};

int main()
{
pointer p1; //使用默认构造函数
pointer p2(p1); //使用复制构造函数
pointer p3=p1; //使用复制构造函数
cout<<"\n初始化后,各对象的值及内存地址"<<endl;
cout<<"对象名\t对象地址 a的值 p中的值 p指向的值 p的地址"<<endl;
cout<<"p1:\t"<<&p1<<","<<p1.a<<","<<p1.p<<","<<*p1.p<<","<<&p1.p<<endl;
cout<<"p2:\t"<<&p2<<","<<p2.a<<","<<p2.p<<","<<*p2.p<<","<<&p2.p<<endl;
cout<<"p3:\t"<<&p3<<","<<p3.a<<","<<p3.p<<","<<*p3.p<<","<<&p3.p<<endl;
*p1.p=20;
p2.a=300;
cout<<"\n修改后,各对象的值及内存地址"<<endl;
cout<<"对象名\t对象地址 a的值 p中的值 p指向的值 p的地址"<<endl;
cout<<"p1:\t"<<&p1<<","<<p1.a<<","<<p1.p<<","<<*p1.p<<","<<&p1.p<<endl;
cout<<"p2:\t"<<&p2<<","<<p2.a<<","<<p2.p<<","<<*p2.p<<","<<&p2.p<<endl;
cout<<"p3:\t"<<&p3<<","<<p3.a<<","<<p3.p<<","<<*p3.p<<","<<&p3.p<<endl;
return 0;
}

运行结果:

技术图片

 

自考新教材-p159

标签:names   end   his   pointer   默认   构造   mes   str   com   

原文地址:https://www.cnblogs.com/duanqibo/p/12259057.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!