gpt4 book ai didi

c++ - 使用复制构造函数的程序输出错误

转载 作者:塔克拉玛干 更新时间:2023-11-03 07:04:52 26 4
gpt4 key购买 nike

<分区>

我有一个关于我刚刚制作的程序的非常简单的查询。如果你执行这个基本代码:

#include <iostream>
#include <vector>

class Exam
{
public:
int b;

Example(int a)
{
b = a;
}

Exam(const Exam &other)
{
printf("Copy constructor of %d\n", other.b);
b = other.b;
}
};

int main()
{
std::vector<Exam> myvector;
Exam ex1(1);
Exam ex2(2);
myvector.push_back(ex1);
myvector.push_back(ex2);

return 1;
}

它生成以下输出:

Copy constructor of 1
Copy constructor of 2
Copy constructor of 1

为什么'1'的拷贝构造函数执行两次而'2'的拷贝构造函数只执行一次??

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com