Hi Lyle, >Without actually looking at the standard, isn't a pure virtual function with an implementation simply a contradiction? No, it's not really the contradiction that it first appears. The compiler enforces that all derived classes implement the pure virtual function (or become marked as "abstract" themselves). A pure virtual function can have an imlpementation in that base class, such that derived classes could do a "using basefunc;" to explicitly utilize the base classes behavior implemented in the pure virtual basefunc method. I grant you, it is a bit unusual. When I run across one, I tend to do a double take. But just like have a "const volatile", there are appropriate situations for pure virtuals with implementations. *grin* --Eljay