类模板
<complex>

std::complex

template <class T> class complex;
复数类
complex 类用于以笛卡尔坐标形式存储两个相同类型的元素,以表示一个复数。

复数可以表示为实数(x)和虚部(y*i)的和:

x + y * i

虚部(y*i)是因子 i 的倍数,i 被称为虚数单位,并且满足:

i2 = -1

在此类中,复数有两个组成部分:real(对应上述示例中的 x)和 imag(对应 y)。

该类复制了普通数值类型的某些功能特性,允许对它们进行赋值、比较、插入和提取,并且支持一些算术运算符。它是一个字面量类型,内部组织为类型为 T 的两个元素的数组:第一个是实部,第二个是虚部

模板参数

T
复数的实部虚部的类型。
使用 floatdoublelong double 以外的 T 来实例化 complex 的效果是未定义的(某些库实现可能支持它,但生成的代码不具有可移植性)。

成员类型

成员类型定义描述
value_type第一个模板参数 (T)两个笛卡尔分量的类型

成员函数


模板特化

complex 为三个基本浮点类型:floatdoublelong double 进行了特化。

这些特化具有与模板相同的成员,但针对这些基本类型优化了实现,并允许与 complex 的其他特化(具有不同模板参数的 complex 对象)进行操作。