假设我有一个基类Base和一个派生类Derived。
class Base
{
public:
void f1(void);
...
int data1;
...
};
class Derived : Base
{
... add stuff here that's unique to Derived
};
Derived如何仅从Base继承函数(即f1())而不继承数据(即data1)?
答案 0 :(得分:0)
具有派生类中不需要的基类的属性是不良继承的提示
在你的情况下我假设你将有另一个需要那些数据成员的派生类,否则它没有意义
然后为什么不做这样的事情:
class Base
{
public:
void f1(void);
...
};
class DerivedClass : Base
{
... add stuff here that's unique to Derived
};
class DerivedClass2 : Base
{
public:
int data1;
....
}
如果您有更多需要这些数据成员的派生类,我建议您创建单独的基类,一个用于函数,一个用于数据成员。