函数模板
<complex>

std::proj

complex (1)
template<class T> complex<T> proj (const complex<T>& x);
complex (1)
template<class T> complex<T> proj (const complex<T>& x);
算术类型 (2)
complex<double> conj (ArithmeticType x);
复数投影。
将复数 x 投影到黎曼球上。

x投影就是 x 本身,但复数无穷大除外,它们会被映射到具有 实部 INFINITY虚部0.0-0.0(如果支持)的complex 值,具体取决于 x虚部的符号。

附加重载为任何 基本算术类型 提供:在这种情况下,函数假定该值为零 虚部
返回类型为 complex<double>,除非参数是 floatlong double(在这种情况下,返回类型是该类型的 complex 实例化:complex<float>complex<long double>)。

参数

x
复数值。

返回值

x 在黎曼球上的复数投影。

示例

1
2
3
4
5
6
7
8
9
10
11
12
13
// proj example
#include <iostream>     // std::cout
#include <complex>      // std::complex, std::proj
#include <limits>       // std::numeric_limits

int main ()
{
  std::complex<double> mycomplex (std::numeric_limits<double>::infinity(),2.0);

  std::cout << "The projection of " << mycomplex << " is " << std::proj(mycomplex) << '\n';

  return 0;
}

可能的输出(无穷大的表示可能有所不同)

The projection of (inf,2) is (inf,0)


另见