quote:
But renaming B here is not remaing the classd B. Is is chaning the class name in the class declaration and in the function definition!
Do you mean that if you trigger VA rename from the line
class A: public B
it will not find the class declaration for class B?
When I trigger rename there, it finds and renames all 3 instances of B in the following sample code. But I think I just don't understand your question.
class B {
public:
virtual void SomeFunc();
};
class A : public B
{
virtual void SomeFunc();
};
void A::SomeFunc()
{
B::SomeFunc();
}
To change what class "class A" is derived from, you would need to rename at all places when you call the parent. Wouldn't a simple find and replace work? Searching for CDialog:: and replacing with CDialogEx:: and taking a look at all found instances before you proceed with the replace?