ここで説明されboost::geometry::get
ている関数を別の関数に渡そうとしていますが、正しく取得できないようです。
私は持っている:
template<typename StorageType = double,
std::size_t D = 3>
class Derivative : public DerivativeBase<StorageType, D> {
public:
typedef typename DerivativeBase<StorageType, D>::results_t results_t;
template<typename Iterator, typename Geometry>
results_t operator()(Iterator& objIterator, StorageType (*getter)(Geometry const&))
...
そしてコンパイラはスローします:
error: no match for call to ‘(Derivative<double, 3ul>) (iterator&, <unresolved overloaded function type>)’
私は自分の関数を次のように呼び出してみました:
derivs = myDerivs(it, &boost::geometry::get<0>);
get
問題の一部は、 に引数を渡さないため、コンパイラがGeometry
関数シグネチャに含まれる型を特定できないことだと思います。
この関数を渡すにはどうすればよいですか?