검색결과 리스트
Transparent operator functors에 해당되는 글 1건
- 2014.07.22 [C++14] Transparent operator functors
C++14에서 추가되는 기능
비교, 연산용 클래스 템플릿인 less, greater, plus, multiplies 등을 템플릿 실인수 없이 사용할 수 있다.
[c++11]
vector<unsigned> v { 10, 50, 20, 30 };
sort(v.begin(),v.end(),
greater<unsigned>());
vector<int> v { -10, 50, 20, 30 };
sort(v.begin(),v.end(), greater<unsigned>());
위의 경우 벡터 v가 int로 바뀌었는데 greater 템플릿은 실인수로 unsigned로 되어 있어서 컴파일 에러가 발생한다.
그러나 아래의 C++14에서는 템플릿에 실인수를 넣지 않아서 컴파일러가 알아서 처리하도록 한다.
[C++14]
vector<unsigned> v { 10, 50, 20, 30 };
sort(v.begin(), v.end(), greater<>());
댓글