Check the class of objects

janderson askme at
Fri Jun 6 08:42:41 PDT 2008

Chris Wright wrote:
> Mael wrote:
>>> What's wrong with:
>>> if(isByteImage(u))
>>> { do something; }
>>> ...
>>> Either way, you still need the if-else block to determine what the 
>>> image is at runtime.
>> Well, actually the point is that the action "do something" is 
>> consistent accross images except when trying to access data (compare 
>> bytes/floats/value/triples), and using a run time if inside the loops 
>> would be unefficient, that's why I want to only use static if in the 
>> loop, but still share most of the code since it's truly redundant 
> Why not use the Visitor pattern?

This may be a good idea, however I wonder how you'd construct visitor 
that does the right conversion since you can't have virtual template 
inheritance.  I guess you could write up a function for each version.


More information about the Digitalmars-d-learn mailing list