错误:模板<class _tp =“”> std :: complex&lt; _Tp&gt; std :: polar(const _Tp&amp;,const _Tp&amp; </class>

时间:2014-06-22 19:24:37

标签: c++ eclipse c++11 complex-numbers

我正在使用C ++ 11上的eclipse(kepler),我需要在复数(std::complex)上使用pow,但我得到以下内容

  

错误:模板std :: complex&lt; _Tp&gt; std :: polar(const _Tp&amp;,const _Tp&amp;)

int Group::getActivity() const{
    complex<int> c(this->getNum1(), this->getNum2());
    c = pow(c, 3); //<--problem here
    return abs(c);
}

代码本身在此函数中没有错误但我得到一个关于它的整体错误(这是整个代码中唯一使用复杂的,我需要使用它)

为了清楚起见,我正在使用std::complex并且在cpp文件的开头有一个包含行。

1 个答案:

答案 0 :(得分:0)

如果您将int更改为double,是否有效?复杂模板仅用于浮点类型(floatdoublelong double)。我怀疑这是问题所在。

This question对此主题有一些权威性的链接。)