名前空間
変種
操作

operator==,!=(std::complex)

From cppreference.com
< cpp‎ | numeric‎ | complex
 
 
 
 
ヘッダ <complex> で定義
(1)
template< class T >
bool operator==( const complex<T>& lhs, const complex<T>& rhs );
(C++14まで)
template< class T >
constexpr bool operator==( const complex<T>& lhs, const complex<T>& rhs );
(C++14以降)
(2)
template< class T >
bool operator==( const complex<T>& lhs, const T& rhs );
(C++14まで)
template< class T >
constexpr bool operator==( const complex<T>& lhs, const T& rhs );
(C++14以降)
(3)
template< class T >
bool operator==( const T& lhs, const complex<T>& rhs );
(C++14まで)
template< class T >
constexpr bool operator==( const T& lhs, const complex<T>& rhs );
(C++14以降)
(C++20まで)
(4)
template< class T >
bool operator!=( const complex<T>& lhs, const complex<T>& rhs );
(C++14まで)
template< class T >
constexpr bool operator!=( const complex<T>& lhs, const complex<T>& rhs );
(C++14以降)
(C++20まで)
(5)
template< class T >
bool operator!=( const complex<T>& lhs, const T& rhs );
(C++14まで)
template< class T >
constexpr bool operator!=( const complex<T>& lhs, const T& rhs );
(C++14以降)
(C++20まで)
(6)
template< class T >
bool operator!=( const T& lhs, const complex<T>& rhs );
(C++14まで)
template< class T >
constexpr bool operator!=( const T& lhs, const complex<T>& rhs );
(C++14以降)
(C++20まで)

2つの複素数を比較します。スカラー引数は、実部が引数と等しく虚部がゼロの複素数として扱われます。

1-3) lhsrhs を等価比較します。
4-6) lhsrhs を不等価比較します。

!= 演算子は operator== から合成される。

(C++20以降)

[編集] パラメータ

lhs, rhs - 比較対象の引数:両方とも複素数であるか、または一方の複素数と一致する型のスカラー(floatdoublelong double

[編集] 戻り値

1-3) true lhs の対応する部分が rhs と等しい場合、それ以外の場合は false
4-6) !(lhs == rhs)

[編集]

#include <complex>
 
int main()
{
    using std::operator""i; // or: using namespace std::complex_literals;
 
    static_assert(1.0i == 1.0i);
    static_assert(2.0i != 1.0i);
 
    constexpr std::complex z(1.0, 0.0);
    static_assert(z == 1.0);
    static_assert(1.0 == z);
    static_assert(2.0 != z);
    static_assert(z != 2.0);
}
English 日本語 中文(简体) 中文(繁體)