vector push_back 是否调用构造函数

来源:互联网 发布:淘宝天猫男装牛仔裤 编辑:程序博客网 时间:2024/05/17 09:04
参考下面的代码:可以看到push_back 调用了拷贝构造函数
#include <iostream>#include <vector>using namespace std;class A { public:     A() { cout<<"A()"<<endl; } A(const A& a)   // 增加拷贝构造函数 { cout << "copy A()" << endl; }     ~A() { cout<<"~A()"<<endl; } public:     int v; }; int main() {     A a;     vector<A> vec;     cout<<"HELLO"<<endl;     vec.push_back(a);     return 0; }/*这样就会输出: A() HELLO copy A() ~A() ~A()*/


0 0
原创粉丝点击