damn MI (cont'd)
ajoo 2002-06-12 03:03:17 Sigh. do I have to write a book to clarify such a simple versioning problem?
Let's say, you use inheritance like
class A: public B, public RTTI<A, B>{
};
ok, good, users have getTypeName, getSuperType functions.
then you give this lib to your coworkers.
three months later, you realized that "hey, wouldn't it be a good idea to add getNamespace() into the RTTI?" so, you work and work and work, finally RTTI has another virtual function
virtual const char* getNamespace();
But, you did not know what a guy, already used this function in his class B.
So actually if he says
class B: A, RTTI<A, B>{......};
he will not get the expected behavior for getNamespace() because he used this function for some other purpose.
In that case, I would suggest you to summon a meeting with all the developers and say "hey, does any one of you used the name getNamespace() in your class?"