- valarray[meta header]
- std[meta namespace]
- slice[meta class]
- function[meta id-type]
friend bool operator==(const slice& x, const slice& y);
slice
オブジェクトの等値比較を行う。
以下と等価:
return x.start() == y.start() &&
x.size() == y.size() &&
x.stride() == y.stride();
- start()[link start.md]
- size()[link size.md]
- stride()[link stride.md]
- この演算子により、以下の演算子が使用可能になる (C++20):
operator!=
#include <valarray>
#include <cassert>
int main()
{
std::slice s1{.start = 3, .length = 5, .stride = 7};
std::slice s2{.start = 3, .length = 5, .stride = 7};
std::slice s3{.start = 3, .length = 5, .stride = 6};
assert(s1 == s2);
assert(s1 != s3);
}
- C++20
- Clang:
- GCC: 10 [mark verified]
- Visual C++: ??
- P1614R2 The Mothership has Landed
- C++20での三方比較演算子の追加と、関連する演算子の自動導出