1
我試圖在我的類模板中使用函數atan2
,但它不起作用。我有一個名爲myclass的類,我試着製作一個函數模板,這個函數是取兩個數字a和b的tan。這些既可以同時爲int或兩者是雙打使用atan2與類模板失敗,ambigous調用重載函數
template <class T>
T myclass<T>::returnArg()
{
T arg(0);
arg = atan2(a, b);
return arg;
}
,但我得到error C2668: 'atan2' : ambiguous call to overloaded function
。任何人都可以提出一些解決辦法嗎?
謝謝。
編輯:我想是能夠整數和雙打傳遞給ATAN2函數,我已經試過
arg = atan2(<T> a, <T> b);
但沒有奏效。
編輯2:我聲明a和b在我的類作爲
template <class T> class myclass
{
private:
T a,b;
public:
myclass(): a(0),b(0){};
myclass(T r, T i) : a(r), b(i){};
// ...
'a'和'b'是什麼類型? – ildjarn 2012-04-24 19:52:24
是'a'和'b'全局變量嗎? – TemplateRex 2012-04-24 19:54:01
提示:如果錯誤消息提到「重載函數」,則函數參數的類型對問題至關重要。 – 2012-04-24 20:06:54