// // vector test // #include #include // vectorを使用する using namespace std; // テンプレートを使って表示関数を定義 template void print_vector(vector vec) { cout << "size=" << vec.size() << "\n"; // サイズを表示 for (int i = 0; i < vec.size(); i++) cout << "v[" << i << "]=" << vec[i] << "\n"; cout << endl; } void test_vector_int() { vector vi(3); // int型ベクトル (サイズ3) for (int i = 0; i < vi.size(); i++) vi[i] = i+1; // 配列のようにアクセスできる // ベクトルの内容表示 cout << "=== phase 1 (int) ===" << endl; print_vector(vi); // viの末尾に追加 (サイズが増加) vi.push_back(125); // ベクトルの内容表示 cout << "=== phase 2 (int) ===" << endl; print_vector(vi); // ベクトルのサイズを 2増やす vi.resize(vi.size() + 2); for (int i = 0; i < vi.size(); i++) // VC++ではエラーになるので int を削除すること vi[i] = (i+1)*3; // ベクトルの内容表示 cout << "=== phase 3 (int) ===" << endl; print_vector(vi); } void test_vector_double() { vector vd(3); // double型ベクトル (サイズ3) for (int i = 0; i < 3; i++) vd[i] = (i+1) * 0.1; // ベクトルの内容表示 cout << "=== phase 1 (double) ===" << endl; print_vector(vd); // vdの末尾に追加 (サイズが増加) vd.push_back(1.25); // ベクトルの内容表示 cout << "=== phase 2 (double) ===" << endl; print_vector(vd); // ベクトルのサイズを 2増やす vd.resize(vd.size() + 2); for (int i = 0; i < vd.size(); i++) // VC++ではエラーになるので int を削除すること vd[i] = (i+1)*0.3; // ベクトルの内容表示 cout << "=== phase 3 (double) ===" << endl; print_vector(vd); } int main() { test_vector_int(); test_vector_double(); return 0; }