#define _USE_MATH_DEFINES
#include <iostream>
#include <complex>
#include <cmath>
double Spectrum(double a, double b,double f)
{
double delta_tau = 10 * pow(10, -6);
double delta_phi = 0.628;
std::complex<double> Hf = a*(1.0 - std::polar(b, delta_phi)*std::polar(1, 2 * M_PI*f*delta_tau));
return std::abs(Hf);
}
int main()
{
std::cout << Spectrum(1.0, 0.99, 900.01) << std::endl;
system("pause");
return 0;
}
Dlaczego program mi się nie kompiluje?
Wyrzuca mi błąd:
Error C2440 'return': cannot convert from 'std::complex<std::complex<double>>' to 'std::complex<double>'
Nie wiem o co może chodzić.