|
|
c++ primer中说在插入第一个元素后,ivec的容量是256,长度为1
但是我这个小程序运行结果却与此不符,不知为何?
请各位高手给予解释!
多谢^_^!
#include <iostream>
#include <vector>
using namespace std;
int main()
{
/* 测试size,capacity*/
vector< int > ivec;
if ( ivec.empty() == true )
cout << "ivec is empty" << endl;
cout << "ivec:size: " << ivec.size()
<< " capacity:" << ivec.capacity() << endl;
for ( int ix = 0; ix < 5; ++ix ) {
ivec.push_back( ix );
cout << "ivec:size: " << ivec.size()
<< " capacity: " << ivec.capacity() << endl;
}
}
运行结果:
ivec is empty
ivec:size: 0 capacity:0
ivec:size: 1 capacity: 1
ivec:size: 2 capacity: 2
ivec:size: 3 capacity: 4
ivec:size: 4 capacity: 4
ivec:size: 5 capacity: 8 |
|