class 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;
}
void f(Point p)
{
cout<<p.GetX()<<endl;
}
int main()
{
Point A(1,2);
f(A);
}
请问:在函数f中定义了一个类对象p和在拷贝函数中一定了一个引用的类对象名p,这两个名字一样会不会影响???两个p的作用域分别在哪里
c++的拷贝构造函数
答案:2 悬赏:40 手机版
解决时间 2021-04-16 04:02
- 提问者网友:别再叽里呱啦
- 2021-04-15 06:40
最佳答案
- 五星知识达人网友:野慌
- 2021-04-15 07:25
不会影响的!!作用域就在函数内部,拷贝函数中的是个引用类对象名,&p相当时给以知道的对象A起个别名,调用函数对引用的操作,相当于是对对象A的操作!而在F中直接用A替换P.
全部回答
- 1楼网友:末日狂欢
- 2021-04-15 09:03
是不会影响的。两个P都是局部变量,都只在函数内部作用的。
如果,在函数里用不到P,在void f(Point p)就可以省略p了,直接void f(Point )也是一样的。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯