如何在不混淆字段的情况下声明复数?

  • 本文关键字:声明 情况下 字段 c++
  • 更新时间 :
  • 英文 :


我尝试创建复数,但无论出于何种原因,它们总是出现具有虚值的实部和虚部归零。 例如,我希望这个小测试应用程序可以打印 (1,2( 的多个实例,但无论我如何尝试它,我得到的只是 (2,0(。

#include "stdafx.h"
#include <complex>
#include <iostream>
using namespace std;
int main()
{
std::complex<double>** complexdouble_c;
complexdouble_c = new std::complex<double>*[5];
for (int i = 0; i < 5; ++i)
complexdouble_c[i] = new std::complex<double>[2];
for (int i = 0; i < 5 && i < 15; i++) {
for (int j = 0; j < 2 && j < 15; j++) {
double real = 1;
double imag = 2;
complexdouble_c[i][j] = (real, imag);
}
}
for (int i = 0; i < 5 && i < 15; i++) {
for (int j = 0; j < 2 && j < 15; j++) {
std::cout << complexdouble_c[i][j];
}
std::cout << "n";
}
std::complex<double> complexdouble;
double real = 1.0;
double imag = 2.0;
complexdouble = (real, imag);
std::cout << complexdouble;
std::cout << complexdouble.real();
std::cout << complexdouble.imag();
getchar();
}

以这种格式声明。这将给出以下输出

std::complex<double> c(1, 2);
// 1 + 2i

相关内容

最新更新