함수 객체 - 논리 연산 조건자

seio·2022년 10월 9일
0

C++ STL

목록 보기
15/17

STL은 다음 세 가지 논리 연산 함수 객체 조건자를 제공한다.

- logical_and<T>: 이항 조건자로 && 연산
- logical_or<T>: 이항 조건자로 || 연산
- logical_not<T>: 단항 조건자로 ! 연산

논리 조건자는 일반적으로 T에 bool 형식을 지정한다. 일반적으로 피연산자의 논리 조건을 비교하기 때문이다.

//논리 조건자 logical_and 예제

template<typename T>
struct Logical_and: public binary_function<T,T,bool>
{
	bool operator()(const T& left ,const T& right)const{
    	return left && right;
    }
};
int main(){
	int n=30;
    logical_and<bool> oAnd;
    
    cout<<oAnd(greater<int>()(n,10),less<int>()(n,50))<<endl;
    
    cout<<oAnd.operator()(greater<int>()(n,10),less<int>()(n,50))<<endl;
    
    cout<<logical_and<bool>()(greater<int>()(n,10),less<int>()(n,50))<<endl;
    
        cout<<logical_and<bool>().operator()(greater<int>()(n,10),less<int>()(n,50))<<endl;
    
    
	
	return 0;
}
profile
personal study area

0개의 댓글