Namespaces
Variants

operator==,!= (std::istream_iterator<T, CharT, Traits, Dist>)

From cppreference.net
Iterator library
Iterator concepts
Iterator primitives
Algorithm concepts and utilities
Indirect callable concepts
Common algorithm requirements
(C++20)
(C++20)
(C++20)
Utilities
(C++20)
Iterator adaptors
Range access
(C++11) (C++14)
(C++14) (C++14)
(C++11) (C++14)
(C++14) (C++14)
(C++17) (C++20)
(C++17)
(C++17)
定义于头文件 <iterator>
template < class T, class CharT, class Traits, class Dist >

bool operator == ( const std:: istream_iterator < T, CharT, Traits, Dist > & lhs,

const std:: istream_iterator < T, CharT, Traits, Dist > & rhs ) ;
(1)
template < class T, class CharT, class Traits, class Dist >

bool operator ! = ( const std:: istream_iterator < T, CharT, Traits, Dist > & lhs,

const std:: istream_iterator < T, CharT, Traits, Dist > & rhs ) ;
(2) (C++20 前)
friend bool operator == ( const istream_iterator & i, std:: default_sentinel_t ) ;
(3) (C++20 起)

检查 lhs rhs 是否相等。两个流迭代器在以下情况下被视为相等:两者都是流结束迭代器,或者两者都引用同一个流。

1) 检查 lhs 是否 等于 rhs
2) 检查 lhs 是否 不等于 rhs
3) 检查 lhs 是否为流结束迭代器。
此函数对普通 无限定查找 限定查找 不可见,仅当 std::istream_iterator<T, CharT, Traits, Dist> 作为实参的关联类时,才能通过 实参依赖查找 找到。

!= 运算符由 operator== 合成

(since C++20)

目录

参数

lhs, rhs - 待比较的流迭代器

返回值

1) true lhs 等于 rhs ,否则为 false
2) lhs 不等于 rhs 则返回 true ,否则返回 false
3) true 如果 lhs 是流结束迭代器, false 否则。

异常

可能抛出实现定义的异常。

缺陷报告

下列行为变更缺陷报告被追溯应用于先前发布的C++标准。

缺陷报告 适用标准 发布时行为 正确行为
LWG 261 C++98 缺失 operator!= 的描述 已补充