0

テンプレート メソッドがあり、テンプレート メソッドでクラスの特定のメソッドを使用して操作を実行したいと考えています。出来ますか ?

template<typename T>
int minus(T t1,T t2){
return t1-t2;
}

私のAppleオブジェクトクラスには、getPrice()というメソッドがあります。どうすれば両方を組み合わせることができますか。

これは正しいです ?

template<typename T>
int minus(T t1,T t2){
return t1.getPrice()-t2.getPrice();
}
4

1 に答える 1

5

このためには、おそらくあなたのタイプに通常の関数が必要です:

template <class T>
int minus(T t1, T t2) {
    return t1 - t2;
}

int minus(const apple& t1, const apple& t2) {
    return t1.getPrice() - t2.getPrice();
}
于 2012-11-11T13:43:41.677 に答える