一 代码
#include "stdafx.h"
#include <iostream>
#include <vector>
using namespace std;
class TEST{
public:
TEST(){
std::cout << "construct t" << std::endl;
}
};
int main()
{
std::cout << "hello,world" <<std::endl;
std::vector<TEST> vt;
vt.reserve(5);
int n = vt.size();
std::cout << n << std::endl;
vt.resize(10);
n = vt.size();
std::cout << n << std::endl;
return 0;
}
// 输出
hello,world
0
construct t
construct t
construct t
construct t
construct t
construct t
construct t
construct t
construct t
construct t
10
请按任意键继续. . .
二 区别
reserve: 仅改变容量,不改变元素数量和值;不调用构造函数;
resive: 改变容量,改变元素数量,调用构造函数