我嘗試編寫通用樹。我添加了函數對象來比較頂點的值。但我有問題:通用對象和函數對象
頭文件中的相關部分:
template <typename T,typename Func>
.....
void addData(T dataIn,Func condition){
主要:
爲#include "gentree.h"
class compare_int {
public:
int operator()(int a,int b){
if (a==b) return 0;
else if (a>b) return -1;
else return 1;
}
};
using namespace std;
int main() {
genTree<int,compare_int> new_tr(5);
new_tr.addData(3,compare_int);
return 0;
}
我得到的錯誤此行:
new_tr.addData(3,compare_int);
錯誤是: 「預期的主要表達式之前」)「標記」和「無效參數」「 任何想法?
順便說一句,你可能想'Func'是在構造函數中,而不是在'addData'說法。 – Jarod42