I have:
VirtualClass : public QObject
{
public:
int m_number;
}
DerivedClass : public VirtualClass
{
public:
DerivedClass(int number) : m_number(number) {};
int m_number;
// some content goes here..
}
client code:
f(VirtualClass* instance)
{
std::cout << instance->m_number;
}
DerivedClass der(100);
I want f(der) to return m_number that relates to DerivedClass , but *I get m_number of VirtualClass*.
What I am doing wrong?!!
Remove
int m_number;from theDerivedClass. Otherwise you have to differentm_numbermembers. One is fromVirtualClassand other is fromDerivedClass.When you add
int m_number;in theDerivedClassyou hidem_number;ofVirtualClassHere is an example how it works: