搜索
编程论坛
→
开发语言
→
C++论坛
→
『 C++教室 』
→ 在c++类中怎么写一个返回值是自身非引用类型的成员函数
标题:
在c++类中怎么写一个返回值是自身非引用类型的成员函数
只看楼主
蓝天绿水
等 级:
论坛游民
威 望:
1
帖 子:24
专家分:29
注 册:2017-9-16
结帖率:
66.67%
楼主
已结贴
√
问题点数:20 回复次数:4
在c++类中怎么写一个返回值是自身非引用类型的成员函数
class test
{
char *name;
public:
test fun(test const &other);//这个函数怎么写 我想将other中的name的值传递给当前调用的对象,其他的方式我会写,但是这个函数的实现应该怎么写
};
搜索更多相关主题的帖子:
c++
类中
成员
函数
test
2018-03-11 18:51
Jonny0201
等 级:
贵宾
威 望:
52
帖 子:488
专家分:2603
注 册:2016-11-7
第
2
楼
得分:20
test func(test
const
&other) {
this
->name = other.name;
return
*
this
; }
2018-03-12 18:47
蓝天绿水
等 级:
论坛游民
威 望:
1
帖 子:24
专家分:29
注 册:2017-9-16
第
3
楼
得分:0
嗯嗯,明白了
那如果写成友元函数应该怎么实现呢?
friend test fun(test const &other);
2018-03-13 20:38
蓝天绿水
等 级:
论坛游民
威 望:
1
帖 子:24
专家分:29
注 册:2017-9-16
第
4
楼
得分:0
嗯嗯,明白了
那如果写成友元函数应该怎么实现呢?
friend test fun(test const &other);
test func(test const &other)
{
this->name = other.name;
return *this;
}
这样写诗错的,在析构中间的临时变量时出错
但是返回值是引用类型时就是正确的,向下面这样就是OK的
friend test &fun(test const &other);
test &func(test const &other)
{
this->name = other.name;
return *this;
}
2018-03-13 21:13
蓝天绿水
等 级:
论坛游民
威 望:
1
帖 子:24
专家分:29
注 册:2017-9-16
第
5
楼
得分:0
我知道了,是拷贝构造函数的原因
2018-03-13 21:42
5
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-485173-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 0.019894 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved