C++类和对象(拷贝构造函数)
1、三种调用【拷贝构造函数】的情况:
情况一 当用类的一个对象去初始化该类的另一个对象时。
情况二 如果函数的形参是类的对象,调用函数时,进行实参和形象结合时。
情况三 如果函数的返回值是类的对象,函数调用完成返回时。
//yuexingtian的【拷贝构造函数】的笔记
#include
class Point //Point类的定义
{
public: //外部接口
Point(int xx=0,int yy=0){X=xx;Y=yy;} //构造函数
Point(Point &p); //拷贝构造函数
int GetX(){return X;}
int GetY(){return Y;}
private:
int X,Y; //私有数据
};
Point::Point(Point &p) //成员函数的实现
{
X=p.X;
Y=p.Y;
cout<<"拷贝构造函数被调用"<void fun1(Point p) //形参为Point类对象的函数
{
cout<//返回值为Point类对象的函数
{
Point A(1,2);
return A;
}
void main() //主程序
{
Point
A(4,5); //第一对象A
Point B(A); //情况一,用A初始化B。第一次调用拷贝构造函数
cout<//情况二,对象B作为fun1的实参。第二次调用拷贝构造函数
B=fun2(); //情况三,fun2的返回值赋给对象B。第三次调用拷贝构造函数
cout<
|
运行结果:
2008-08-24
阅读(2071) | 评论(0) | 转发(0) |