函式模板
<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)


另見