On Sun, 2002-03-24 at 06:43, Jon Berndt wrote:
> > Compiling...
> > FGAerodynamics.cpp
> > c:\src\flightgear\src\fdm\jsbsim\fgaerodynamics.cpp(229) : error C2661:
> > 'Tie' : no overloaded function takes 4 parameters
> >
> > Adding an ugly cast fixes the problem:
> >
> >   PropertyManager->Tie("forces/fbx-aero-lbs", this,1,
> >     (double (FGAerodynamics::*)(int) const) &FGAerodynamics::GetForces);
> >
> > A similar cast is required on every pointer to member function that
> > takes an index, probably because there is a similar named member
> > function that takes no index:
> >
> > class FGAerodynamics : public FGModel {
> > ...
> >   FGColumnVector3& GetForces(void) {return vForces;}
> >   inline double GetForces(int n) const {return vForces(n);}
> >
> > On that note, since we are taking a pointer to a member function, the
> > compiler must emit a function body.  Thus the member function can't be
> > inline.  This may help decide which functions to inline.
> >
> > Cheers,
> > Bernie
> 
> 
> Are we doing something unusual, or is MSVC requiring something it shouldn't?

Aside from the point about the inlines, it seems like it should be just
fine.  The overload is fair and legal.

> 
> Jon
> 
> 
> _______________________________________________
> Flightgear-devel mailing list
> [EMAIL PROTECTED]
> http://mail.flightgear.org/mailman/listinfo/flightgear-devel
> 
-- 
Tony Peden
[EMAIL PROTECTED]
We all know Linux is great ... it does infinite loops in 5 seconds. 
-- attributed to Linus Torvalds

_______________________________________________
Flightgear-devel mailing list
[EMAIL PROTECTED]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel

Reply via email to