名前空間
変種
操作

std::complex<T>::real

From cppreference.com
< cpp‎ | numeric‎ | complex
 
 
 
 
プライマリテンプレート std::complex<T>
(1)
T real() const;
(C++14まで)
constexpr T real() const;
(C++14以降)
(2)
void real( T value );
(C++20まで)
constexpr void real( T value );
(C++20以降)
特殊化 std::complex<float>
(1)
float real() const;
(C++11まで)
constexpr float real() const;
(C++11以降)
(2)
void real( float value );
(C++20まで)
constexpr void real( float value );
(C++20以降)
特殊化 std::complex<double>
(1)
double real() const;
(C++11まで)
constexpr double real() const;
(C++11以降)
(2)
void real( double value );
(C++20まで)
constexpr void real( double value );
(C++20以降)
特殊化 std::complex<long double>
(1)
long double real() const;
(C++11まで)
constexpr long double real() const;
(C++11以降)
(2)
void real( long double value );
(C++20まで)
constexpr void real( long double value );
(C++20以降)

複素数の実部へアクセスします。

1) 実部を返します。
2) 実部を value に設定します。

目次

[編集] パラメータ

value - 実部を設定する値

[編集] 戻り値

1) *this の実部。
2) (なし)

[編集] ノート

C++11 では、std::complex の特殊化におけるオーバーロード (1) は const 修飾子なしで指定されていました。しかし、C++11 では、非静的メンバ関数で constexpr 指定子が使用されると const が暗黙的に意味されるため、const が指定されているかのように動作します。

[編集] 欠陥報告

以下の動作変更を伴う欠陥報告が、以前に公開されたC++標準に遡って適用されました。

DR 適用対象 公開された動作 正しい動作
LWG 387 C++98 実部を直接設定できませんでした 新しい real オーバーロードで直接設定できます

[編集] 関連項目

実部を返す
(関数テンプレート) [編集]
複素数の虚部にアクセスする
(公開メンバ関数) [編集]
English 日本語 中文(简体) 中文(繁體)