TITLE: Private virtual methods PROBLEM: bs@alice.att.com (Bjarne Stroustrup) Virtual private functions ought to exist for reasons of orthogonality alone. However, there is also a real use for them. To quote the ARM (pg256): Private virtual functions provide a way for the implementation of a base class to rely on derived classes without the functions involved being exposed to the general users of the base class. Whether the derived class chooses to expose the functions to its users is not a concern for the base class writer. This comes in handy for classes that provides some fairly general and standard services to users and implementations are completed by functions supplied by derived classes. RESPONSE: sdm@cs.brown.edu (Scott Meyers), 16 Mar 93 I don't much care for this argument, because it results in software designs whereby derived classes are supposed to override functions they can't call. Conceptually, these are "write-only" functions, and that makes no sense to me. I believe that all virtual functions should be either protected or public, but I'd be interested in hearing arguments to the contrary.