- **C++**
(*http://www.velocityreviews.com/forums/f39-c.html*)

- - **Problem with templatized overloaded operator ()**
(*http://www.velocityreviews.com/forums/t483401-problem-with-templatized-overloaded-operator.html*)

Problem with templatized overloaded operator ()I can't get this code working:
class Scheme_euler { private: .... public: .... template<class D, double (D::*drift)(double) const, double (D::*diffu)(double) const> void operator ()(Path& thePath, const D& theD) const; }; Scheme_euler theEu(0, 1, 100); //constructor theEu<Diff_sine, &Diff_sine::mu, &Diff_sine::sigma> (thePath, theDiff_sine); However if I don't overload the operator () but just consider a member solve function, then using: theEu.solve<Diff_sine, &Diff_sine::mu, &Diff_sine::sigma> (thePath, theDiff_sine); woks fine. So the problem is in overloading the operator, but I can't understand where I'm wrong. Thank you in advance for your help! StephQ |

Re: Problem with templatized overloaded operator ()On Mar 11, 12:43 pm, "StephQ" <askmeo...@mailinator.com> wrote:
> I can't get this code working: > > class Scheme_euler > { > private: > .... > > public: > .... > > template<class D, double (D::*drift)(double) const, double > (D::*diffu)(double) const> > void operator ()(Path& thePath, const D& theD) const; > > }; > > Scheme_euler theEu(0, 1, 100); //constructor > theEu<Diff_sine, &Diff_sine::mu, &Diff_sine::sigma> > (thePath, theDiff_sine); > > However if I don't overload the operator () but just consider a member > solve function, then using: > theEu.solve<Diff_sine, &Diff_sine::mu, &Diff_sine::sigma> > (thePath, theDiff_sine); > woks fine. > > So the problem is in overloading the operator, but I can't understand > where I'm wrong. > > Thank you in advance for your help! > StephQ I havent tried the code but just off the back of my mind I recall similar problems with the function operator. try the following.. theEu.operator()<Diff_sine, &Diff_sine::mu, &Diff_sine::sigma> (thePath, theDiff_sine); |

All times are GMT. The time now is 05:01 AM. |

Powered by vBulletin®. Copyright ©2000 - 2014, vBulletin Solutions, Inc.

SEO by vBSEO ©2010, Crawlability, Inc.