![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
C++中的关于指针的一点小问题
csocketfile构造函数csocketfile(csocket*psocket,....)但我们用时会这样:csocket*m_socket=newcsocket;...
csocketfile构造函数csocketfile(csocket *psocket,....)
但我们用时会这样:
csocket * m_socket=new csocket;
csocketfile m_cf(&m_socket);
我的问题是m_socket不是指针吗,干嘛还要取址?? 展开
但我们用时会这样:
csocket * m_socket=new csocket;
csocketfile m_cf(&m_socket);
我的问题是m_socket不是指针吗,干嘛还要取址?? 展开
6个回答
展开全部
csocketfile m_cf(&m_socket);是拷贝构造函数,m_socket虽然是指针但语法要求这样写,意思是把对象m_socket构造的内容拷贝给一个新对象m_cf
展开全部
不需要加取地址符。
代码错误,你可以鄙视该书作者。
代码错误,你可以鄙视该书作者。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
m_socket 是指针,但我们需要记录下创建的指针,取值可以记录下新创建的指针
想形参和实参的关系,我们向形参传递实参时,并不能通过形参改变实参的值,只有传递指针才能改变实参的值,m_socket相当于实参,要改变m_socket的值,记录下新创建的指针,只能传指针,指针的指针既是二级指针,所以取地址
想形参和实参的关系,我们向形参传递实参时,并不能通过形参改变实参的值,只有传递指针才能改变实参的值,m_socket相当于实参,要改变m_socket的值,记录下新创建的指针,只能传指针,指针的指针既是二级指针,所以取地址
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你已经给出了自己问题的答案,就是不要取址的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这部科学,理论上是不需要的,你能编译通过么?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询