728x90
[c++]리스트 sort 하는 방법 (tistory.com)
#include <algorithm>
#include <list>
int main() {
std::list<int> lst;
lst.push_back(5);
lst.push_back(1);
std::sort(lst.begin(), lst.end());
return 0;
}
-> 컴파일 에러
원인: algorithm 헤더의 sort함수는 매개변수로 오는 반복자가 반드시 RandomAccessIterator(임의 접근 반복자) 타입이어야 함
리스트는 반복자가 BidirectionalIterator(순차 접근 반복자) 타입이므로 이를 쓸 수 없음.
아래와 같이 수정해야 함
#include <list>
int main() {
std::list<int> lst;
lst.push_back(5);
lst.push_back(1);
lst.sort();
return 0;
}
반복자에 대한 설명
728x90
'CS > C++' 카테고리의 다른 글
C++ template 장단점 (0) | 2023.12.14 |
---|---|
c++ 캐스팅 (0) | 2023.12.14 |
map과 unordered_map 차이 (0) | 2023.12.13 |
상등성과 동등성 차이 (0) | 2023.12.13 |
오버로딩과 오버라이딩의 차이 (0) | 2023.12.13 |