2010-11-25 28 views
0

如何使用函數模板以便以下方法適用於任何傳遞的向量?QT函數模板


class MyClass 
{ 
public: 
    static void method(Vector &aVector); 
}; 

void MyClass::method(Vector &aVector) 
{ 
... 
} 

我嘗試以下,但我收到此錯誤信息:
collect2:LD返回1退出狀態


class MyClass 
{ 
public: 
    template<class T> 
    static void method(Vector &aVector); 

}; 

template<class T> 
void MyClass::method(Vector &aVector) { 
// ... 
} 

回答

3
template<class T> static void method(Vector<T> &aVector); 
+1

(耳語:)請寫小矢量:) v – 2010-11-25 19:00:35

0

只要聲明該函數作爲模板,通其向量的模板參數,如下所示:

class MyClass 
{ 
public: 
    template<class T> 
    static void method(Vector<T> &aVector) 
    { 
     // ... 
    } 
}; 
0

collect2:ld返回1退出狀態

我發現當我的程序沒有正確清除內存時發生此錯誤。即有一個我的程序正在運行的實例。在我的基於windows的PC上拿起它。所以按Ctrl + Alt + Del,你應該看到一個「collect2.exe」的實例或運行的東西。結束該任務並運行應該工作。

不知道爲什麼會發生這種情況。