왜 표준 라이브러리 코드에서는 같지 않음(!=)을 (!(a==b))로 쓰나요?

조회수 1192회

C++ 표준 라이브러리에서 갖고 온 remove코드입니다. 왜 같지 않음을 (*first != val)이 아니라 !(*first == val)로 확인하나요?

remove외에 다른 표준 라이브러리에 이렇게 쓰는게 많던데 특별한 이유라도 있나요?

소스 코드

template <class ForwardIterator, class T>
ForwardIterator remove (ForwardIterator first, ForwardIterator last, const T& val)
 {
    ForwardIterator result = first;
    while (first!=last) {
        if (!(*first == val)) {
            *result = *first;
            ++result;
        }
        ++first;
    }
    return result;
 }

1 답변

답변을 하려면 로그인이 필요합니다.

Hashcode는 개발자들을 위한 무료 QnA 사이트입니다. 계정을 생성하셔야만 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)

ᕕ( ᐛ )ᕗ
로그인이 필요합니다

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 계정을 생성하셔야만 글을 작성하실 수 있습니다.