Created
July 15, 2013 02:27
-
-
Save mkacky/5997115 to your computer and use it in GitHub Desktop.
sample of resize() and assign()
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <vector> | |
using namespace std; | |
void dispVec(const vector<int>& vec) | |
{ | |
cout << "===vecの中身===" << endl; | |
for(vector<int>::const_iterator it = vec.begin(); it != vec.end(); ++it) | |
{ | |
cout << *it << endl; | |
} | |
cout << "===ここまで===" << endl; | |
} | |
int main(void) | |
{ | |
vector<int> vec; | |
for(int i=0; i<3; ++i) | |
vec.push_back(i); | |
cout << "vec.size() : " << vec.size() << endl; | |
//// 表示例 | |
// vec.size() : 3 | |
dispVec(vec); | |
cout << "\n"; | |
// vectorのサイズよりも大きいサイズ(7)を指定し,初期値(0)で埋める. | |
vec.resize(7, 0); | |
cout << "vec.resize(7,0)" << endl; | |
cout << "vec.size() : " << vec.size() << endl; | |
//// 表示例 | |
// vec.size() : 7 | |
dispVec(vec); | |
//// 表示例 | |
// ===vecの中身=== | |
// 0 | |
// 1 | |
// 2 | |
// 0 | |
// 0 | |
// 0 | |
// 0 | |
// ===ここまで=== | |
cout << "\n"; | |
// vectorのサイズよりも小さいサイズ(4)を指定し,はみ出した部分をerase()で削除する. 初期値は利用されない. | |
vec.resize(4, -3); | |
cout << "vec.resize(4, -3)" << endl; | |
cout << "vec.size() : " << vec.size() << endl; | |
//// 表示例 | |
// vec.size() : 4 | |
dispVec(vec); | |
//// 表示例 | |
// ===vecの中身=== | |
// 0 | |
// 1 | |
// 2 | |
// 0 | |
// ===ここまで=== | |
cout << "\n"; | |
// vectorのサイズよりも大きいサイズ(7)を指定し,指定した要素数を初期値(5)で埋める. | |
vec.assign(7, 5); | |
cout << "vec.assign(7, 5)" << endl; | |
cout << "vec.size() : " << vec.size() << endl; | |
//// 表示例 | |
// vec.size() : 7 | |
dispVec(vec); | |
//// 表示例 | |
// ===vecの中身=== | |
// 5 | |
// 5 | |
// 5 | |
// 5 | |
// 5 | |
// 5 | |
// 5 | |
// ===ここまで=== | |
cout << "\n"; | |
// vectorのサイズよりも小さいサイズ(4)を指定し,指定した要素数を初期値(-3)で埋める. | |
vec.assign(4, -3); | |
cout << "vec.assign(4, -3)" << endl; | |
cout << "vec.size() : " << vec.size() << endl; | |
//// 表示例 | |
// vec.size() : 7 | |
dispVec(vec); | |
//// 表示例 | |
// ===vecの中身=== | |
// -3 | |
// -3 | |
// -3 | |
// -3 | |
// ===ここまで=== | |
return 0; | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment