注册 登录
编程论坛 C++教室

c++类的问题

Loki_dc 发布于 2008-11-15 12:53, 577 次点击
#include<iostream>
using namespace std;
class point
{
private:
    int x,y;
public:
    point(int xx=0,int yy=0)
    {
        x=xx;
        y=yy;
    }
    point(point &p);
    int get_x{return x;}
    int get_y{return y;}
};
point::point(point &p)
{
    x=p.x;
    y=p.y;
    cout<<"拷贝构造函数被调用"<<endl;
}
这是某本书上的一段程序的部分内容,我想知道程序中x=p.x;y=p.y是什么意思。
.操作符左面是类类型,但右面不应该是public成员么,为什么会是x呢??
2 回复
#2
p1s2008-11-15 13:00
这是拷贝构造函数,也就是说用一个对象去初始化另一个对象。左边的x和y分别表示待初始化对象的x和y,p.x和p.y分别是被拷贝对象的x和y。拷贝构造函数还分为浅拷贝和深拷贝,这些内容在《易学C++》的第15章中有所介绍。
#3
Loki_dc2008-11-15 13:10
恩 明白一些了 谢谢LS的那为朋友~~  
1