| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1367 人关注过本帖
标题:小白求助 拷贝构造函数出问题了
只看楼主 加入收藏
d7se123
Rank: 2
等 级:论坛游民
帖 子:65
专家分:14
注 册:2020-3-13
结帖率:50%
收藏
 问题点数:0 回复次数:2 
小白求助 拷贝构造函数出问题了
#include "iostream"
using std::endl;
using std::cin;
using std::cout;
using std::ostream;

class Test
{
private:
    int a;
    int b;
public:
    Test()
    {

    }
public:
    Test(int a, int b)
    {
        this->a = a;
        this->b = b;
    }
public:
    Test(const Test& obj)
    {
        this->a = obj.a + 10;
        this->b = obj.b + 10;
    }
public:
    friend ostream& operator<<(ostream& cout, Test t);

};

ostream& operator<<(ostream& cout, Test t)
{
    cout << t.a << " " << t.b << endl;
    return cout;
}

Test fun2()
{
    Test t4(222, 333);
    return t4;
}

void main()
{
    Test t1 = fun2();
    cout << t1 << endl;

    Test t2;
    t2 = fun2();
    cout << t2 << endl;
    system("pause");
}
/*问题 打印结果为啥是242 353  不是 232 343
242 353
242 353
*/
搜索更多相关主题的帖子: std cout Test int public 
2020-03-24 15:59
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9025
专家分:54030
注 册:2011-1-18
收藏
得分:0 
Test fun2()
{
    Test t4(222, 333);
    return t4; // 可能调用一次拷贝构造
}

ostream& operator<<(ostream& cout, Test t) // 调用一次拷贝构造
2020-03-24 16:21
d7se123
Rank: 2
等 级:论坛游民
帖 子:65
专家分:14
注 册:2020-3-13
收藏
得分:0 
回复 2楼 rjsp
哦哦 好的谢谢啦
2020-03-24 18:39
快速回复:小白求助 拷贝构造函数出问题了
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.046721 second(s), 11 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved