C++对象缺省函数
2015-07-08 12:02
302 查看
#include <iostream>
#include <string>
using namespace std;
class CTestPlus{
public:
CTestPlus(){
m =0;
p=new int(100);
}
~CTestPlus(){delete p;}
CTestPlus(const CTestPlus& a) //拷贝构造函数
{
m = a.m;
p = new int;
*p = *(a.p);
}
CTestPlus& operator=(const CTestPlus& a) //赋值函数
{
m = a.m;
p = new int;
*p = *(a.p);
return *this;
}
void output(CTestPlus &a)
{
cout<<"a.m ="<<a.m<<endl;
cout<<"a.p ="<<*(a.p)<<endl;
}
private:
int m;
int *p;
};
#include "CTestPlus.h"
int main()
{
CTestPlus ctest;
CTestPlus A = ctest;
ctest.output(A);
//cout<<"A.m ="<<A.m;
CTestPlus c;
c =A;
ctest.output(c);
int wait;
cin>>wait;
}
#include <string>
using namespace std;
class CTestPlus{
public:
CTestPlus(){
m =0;
p=new int(100);
}
~CTestPlus(){delete p;}
CTestPlus(const CTestPlus& a) //拷贝构造函数
{
m = a.m;
p = new int;
*p = *(a.p);
}
CTestPlus& operator=(const CTestPlus& a) //赋值函数
{
m = a.m;
p = new int;
*p = *(a.p);
return *this;
}
void output(CTestPlus &a)
{
cout<<"a.m ="<<a.m<<endl;
cout<<"a.p ="<<*(a.p)<<endl;
}
private:
int m;
int *p;
};
#include "CTestPlus.h"
int main()
{
CTestPlus ctest;
CTestPlus A = ctest;
ctest.output(A);
//cout<<"A.m ="<<A.m;
CTestPlus c;
c =A;
ctest.output(c);
int wait;
cin>>wait;
}
相关文章推荐
- C++容器类型
- C++ 怎么取整形数组的长度
- 黑马-C语言-流程控制,循环结构
- 黑马-C语言-关系,逻辑运算
- 如何用C语言封装 C++的类,在 C里面使用
- C++运算符重载的方法详细解析
- c++运算符重载总结
- C++中的内存分区介绍
- C语言常见面试题(经典中的经典)
- C++ Vector用法详解
- C++继承的函数实现
- C++ Primer学习笔记(12)——class和struct 定义的类有什么不同
- [调试][程序打印]当printf不能用时,使用C++的不定参数来搞定OutputDebugString打印
- C语言将24小时制转换为12小时制的方法
- 通过友元函数实现两个不同类中私有成员变量的数据交换
- C++ Primer学习笔记(11)——(转)c++ 标准库的各种容器(vector,deque,map,set,unordered_map,unordered_set,list)的性能考虑
- C/C++宏定义中#与##区别
- 【c语言】数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字
- quick_sort(快速排序)c语言实现
- c++训练题(牵扯到大数据的保存)