我正在处理两个共享非常相似的特性/功能的不同类...所以我认为最好将共享功能合并到一个其他类将继承的类中。
然而,关键的区别在于一个类需要确保一些变量是const,而另一个类要求那些相同的变量是非const不是。
示例...
class SharedClass {
public:
const GetXPlusY() const
{
return x+y;
}
const int x;
const int y;
private:
};
class RequiresConst:
public SharedClass
{
public:
private:
};
class DoesNotRequireConst:
public SharedClass
{
public:
const LockedGetXPlusY() const
{
// Add a lock here since our x/y values aren't const here.
return GetXPlusY();
}
// Redefine x and y is non-const somehow...
int x;
int y;
private:
};
我不确定这在C ++中是否可行。