operators
template< class T > valarray<bool> operator==( const valarray<T>& lhs, const valarray<T>& rhs ); template< class T > valarray<bool> operator!=( const valarray<T>& lhs, const valarray<T>& rhs ); template< class T > valarray<bool> operator<( const valarray<T>& lhs, const valarray<T>& rhs ); template< class T > valarray<bool> operator<=( const valarray<T>& lhs, const valarray<T>& rhs ); template< class T > valarray<bool> operator>( const valarray<T>& lhs, const valarray<T>& rhs ); template< class T > valarray<bool> operator>=( const valarray<T>& lhs, const valarray<T>& rhs ); | (1) | |
|---|---|---|
template< class T > valarray<bool> operator==( const T& lhsv, const valarray<T>& rhs ); template< class T > valarray<bool> operator!=( const T& lhsv, const valarray<T>& rhs ); template< class T > valarray<bool> operator<( const T& lhsv, const valarray<T>& rhs ); template< class T > valarray<bool> operator<=( const T& lhsv, const valarray<T>& rhs ); template< class T > valarray<bool> operator>( const T& lhsv, const valarray<T>& rhs ); template< class T > valarray<bool> operator>=( const T& lhsv, const valarray<T>& rhs ); | (2) | |
template< class T > valarray<bool> operator==( const valarray<T>& lhs, const T& rhsv ); template< class T > valarray<bool> operator!=( const valarray<T>& lhs, const T& rhsv ); template< class T > valarray<bool> operator<( const valarray<T>& lhs, const T& rhsv ); template< class T > valarray<bool> operator<=( const valarray<T>& lhs, const T& rhsv ); template< class T > valarray<bool> operator>( const valarray<T>& lhs, const T& rhsv ); template< class T > valarray<bool> operator>=( const valarray<T>& lhs, const T& rhsv ); | (3) | |
将数字数组中的每个值与另一个值进行比较。
1%29返回一个数字数组bool中的每个元素都是通过将指示的比较运算符应用到相应的lhs和rhs
如果size() != v.size()...
2%29返回一个数字数组bool包含每个元素,每个元素都是通过将指示的比较运算符应用到lhsv的相应值rhs...
3%29返回一个数字数组bool中的每个元素都是通过将指示的比较运算符应用到相应的lhs和rhsv...
参数
lhs, rhs | - | numeric arrays to compare |
|---|---|---|
lhsv, rhsv | - | values to compare to each element within a numeric array |
返回值
的数字数组bool包含相应元素的比较结果。
例外
%280%29
注记
只有满足下列要求,才能实例化每个操作符:
- 指定的运算符可应用于
T
- 结果值可以毫不含糊地转换为
bool...
函数的返回类型与std::valarray在这种情况下,替换类型具有以下属性:
- 全
const成员职能std::valarray提供。
std::valarray,,,std::slice_array,,,std::gslice_array,,,std::mask_array和std::indirect_array可以从替换类型构造。
- 所有接受类型参数的函数
conststd::valarray&除begin()和end()%28,因为C++14%29也应该接受替换类型。
- 接受两个类型参数的所有函数
conststd::valarray&应该接受每一个组合conststd::valarray&以及替代型。
- 返回类型不会在最嵌套的参数类型上添加两个以上的模板嵌套级别。
例
二次
#include <iostream>
#include <valarray>
int main()
{
// zero all negatives in a valarray
std::valarray<int> v = {1, -1, 0, -3, 10, -1, -2};
std::cout << "Before: ";
for(auto n: v) std::cout << n << ' '; std::cout << '\n';
v[v < 0] = 0;
std::cout << "After: ";
for(auto n: v) std::cout << n << ' '; std::cout << '\n';
// convert the vector<bool> result of == to a single bool
std::valarray<int> a = {1,2,3};
std::valarray<int> b = {2,4,6};
std::cout << "2*a == b is " << std::boolalpha
<< (2*a == b).min() << '\n';
}二次
产出:
二次
Before: 1 -1 0 -3 10 -1 -2
After: 1 0 0 0 10 0 0
2*a == b is true二次
© cppreference.com在CreativeCommonsAttribution下授权-ShareAlike未移植许可v3.0。
本文档系腾讯云开发者社区成员共同维护,如有问题请联系 cloudcommunity@tencent.com

