[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
Re: Virtual methods?
On Fri, 22 Aug 2003, Jan Ekholm wrote:
> >> I was wondering; how much impact on performance do I get if I use a
> >> base class that defines a virutal method "Render" and derive all
> >> "renderable" objects from it? I mean, I'll probably have some loops
> >> calling the "Render" method for each object. Is this too expensive? Any
> >> alternatives?
> >
> >Really. algorithmic optimisation is far more valuable than worrying
> >about a tiny overhead like v-method dispatching.
>
> So true. Premature optimization is the root bla bla... It probably just
> guarantees that your game is never completed.
I think you are beeing a bit harsh here. Depending on how you approach
things, some people (not me) will argue that virtual methods have an
overhead. Personally I would never hesitate, but what if you want to call
10000 rendering objects pr. frame? Would it be worth the hassle to store a
pointer to the functions instead of relying on virtual methods?
I wouldn't think so, but I was looking forward to some comments that
weren't merely a disregard of any objections to virtual methods.
Also, the original poster clearly have not yet implemented anything. While
you consider eliminating the overhead of a virtual method an optimization
best delayed until actually proven a problem, unless you know that or have
a feeling that it will not actually be a major time "bummer", you should
be entitled to ask and get an usuable answer.
/me puts on his asbestous suit
Mads
--
Mads Bondo Dydensborg. madsdyd@challenge.dk
Today, the record companies are saying MP3s are the biggest evil. Tomorrow
they're going to say they're the greatest thing when they figure
them out.
- Gene Kan, Gnutella developer