[C++] C++ STL set 기본 사용법과 예제
C++에서 set 사용법을 간단하게 알아보자
환경 및 선수조건
- C++
세트 기본 함수
기본형태
set<T>
: 원하는 자료형 및 클래스 T를 통해 생성
iterator(반복자)
begin()
: beginning iterator를 반환end()
: end iterator를 반환
추가 및 삭제
insert(element)
: 세트에 element를 추가erase(element)
: 세트에서 해당하는 element를 삭제clear()
: 세트에 있는 모든 원소 삭제
조회
find(element)
: element에 해당하는 iterator를 반환count(element)
: element에 해당하는 개수를 반환
기타
empty()
: 비어있으면 true 아니면 false를 반환size()
: 세트에 포함되어 있는 원소들의 수를 반환
특징
- 중복을 허용하지 않는다.
- 중복을 허용하려면 multiset을 사용해야한다.
구현 코드
#include <iostream>
#include <set>
#include <string>
using namespace std;
int main(){
// set
set<string> s;
// insert(element)
s.insert("abc");
s.insert("def");
s.insert("ghi");
s.insert("jkl");
// erase(element)
s.erase("jkl");
// empty(), size()
if(!s.empty()) cout << "s size: " << s.size() << '\n';
// find(element)
cout << *s.find("abc") << '\n';
cout << *s.find("def") << '\n';
// count(element)
cout << "abc count: " << s.count("abc") << '\n';
// begin(), end()
cout << "traverse" << '\n';
for(auto it = s.begin(); it != s.end(); it++){
cout << "value: " << *it << '\n';
}
return 0;
}