Studies/C++

STL 자료구조

쿠뱃봉 2022. 1. 9. 18:40
#include<iostream>
#include<vector>
#include<string>

using namespace std;

template<typename T>
void printArray(vector<T>& v) {
	typename vector<T>::iterator it;
	for (it = v.begin(); it!= v.end(); it++)
		cout << *it << endl;

}

template<typename T>
void printArray(vector<T*>& v) {
	typename vector<T*>::iterator it;
	for (it = v.begin(); it != v.end(); it++)
		cout << **it << endl;

}


int main() {

	vector<int> arr1;
	arr1.push_back(10);
	arr1.push_back(20);
	arr1.push_back(30);
	printArray(arr1);

	//vector<int>::iterator it;
	//for (it = arr1.begin(); it != arr1.end(); it++)
	//	cout << *it << endl;

	
	for (int i = 0; i < arr1.size(); i++)
		cout << arr1.at(i) << endl;


	vector<string> arr2;
	arr2.push_back("홍길동");
	arr2.push_back("김길동");
	arr2.push_back("이길동");
	printArray(arr2);





	vector<int*> arr3;
	arr3.push_back(new int(10));
	arr3.push_back(new int(20));
	arr3.push_back(new int(30));

	printArray(arr3);


	for (int i = 0; i < arr3.size(); i++) {
		delete arr3.at(i);
	}
	arr3.clear();

	return 0;
}