【发布时间】:2021-07-30 09:37:08
【问题描述】:
在编写 C++ 代码时,而不是:
double a, b;
...
std::complex<double> z = a + b * std::complex<double>(0, 1);
我更喜欢这样写:
std::complex<double> z = a + b * i;
我可以看到C99有宏I(https://en.cppreference.com/w/c/numeric/complex/I),但是不能和std::complex一起使用:
std::complex<double> z = a + b * I; // does not compile
当然,我可以为此目的定义一个常量,但该常量必须已经存在于 C++ 中的某个地方。它叫什么?
【问题讨论】:
-
@KamilCuk 你不能那样做。 C++ 不支持 C 的
_Complex类型,而是使用std::complex
标签: c++ c++14 std complex-numbers