boost::geometry::get
関数described hereを別の関数に渡そうとしていますが、正しくできないようです。boost :: geometry関数への関数ポインタ
私がしている:
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>)’
私は私の関数を呼び出してみました:私は問題の一部は、そのI以来だと思い
derivs = myDerivs(it, &boost::geometry::get<0>);
get
に引数を渡さないと、コンパイラはどのタイプを把握できませんGeometry
は関数シグネチャ内になければなりません。
この関数をどのように渡すのですか?
不必要な環境をすべて削除して、これをすべて同じ問題がある単純な 'std :: get'に減らすことができます。 – pmr