// resize( ) 領域を拡張するときに. 追加分の初期化もOK
// resize( ) は void型 で、引数が1個もものと引数が2つのものとがある

#include <iostream>
#include <vector>

using namespace std;

int
main( ) {
	cout << "[vector06] resize" << endl ;

	vector<int>  iVec;

	cout << "vector size = " << iVec.size( ) << endl ;

	iVec.push_back( 10 );
	iVec.push_back(  9 );
	iVec.push_back(  8 );

	cout << "vector size = " << iVec.size( ) << endl ;

	for ( vector<int>::iterator i = iVec.begin( ) ; i != iVec.end( ) ; i++ ) {
		cout << *i << endl ;
	}

	cout << "resize( 5, 99)" << endl ;
	// サイズを 5 にして、追加された領域は 99 で初期化する.
	iVec.resize( 5, 99 );
	cout << "vector size = " << iVec.size( ) << endl ;
	for ( i = iVec.begin( ) ; i != iVec.end( ) ; i++ ) {
		cout << *i << endl ;
	}

	return 0;
}


//	非常に便利です。サイズを追加して、追加分のみ初期化も可能なわけです。
//	§1.6.1@プロ言(第3版)より、
//		>	realloc() の代わりに、vector を試してみていただきたい。
//	まさに、Stroustrupの言う通りです。便利です。


// end of file