空类方法实现
Empty class method implementation
我定义了一个类Example,其中包含一些数据成员,setter和getter方法:
class Example
{
private:
int variable_A;
public:
void set_A_value(int input)
{
variable_A = input;
}
int get_A_value()
{
return variable_A;
}
}
之后,我在其他源代码文件中创建类实例并调用setter和getter方法。
如果我决定删除variable_A从类示例之后,这是一个很好的做法,离开getter和setter方法空的实现,这样我们就不必从其他源文件中删除代码?
很难说,因为您没有提供任何上下文,但我猜您正在做一些不是很好的面向对象设计。
getter和setter应该访问类的概念属性,而不是其物理成员。如果你为每个私有变量都设置了getter和setter,那么它就违背了封装的全部目的。
要么variable_A
存储了每个对象的概念属性——在这种情况下,删除它实际上会改变类的语义(在这种情况下,依赖于它的代码无论如何都必须重写)——要么它没有,但形成了一个更大的特性的一部分,可以以一种不涉及variable_A
的方式重写——在这种情况下,首先不应该有getter和setter。
在代码中保留未使用的变量不是一个好的做法。这可能会给读者造成困惑。但是,如果变量或函数在某处被使用,删除它们肯定会产生错误。如果它们没有被使用,那么您可以给这项工作最低的优先级。
相关文章:
- 将非类库分离为标头和实现的方法
- enable_if在类声明之外实现的方法专用化
- 创建一个类方法模板,该模板将使用稍后实现的函数
- 强制派生的类实现私人方法
- 如何用虚拟方法动态实现类
- C++-类方法/空洞的实现
- 我应该在哪里实现我的类方法
- 实现基类方法来访问派生类的属性
- 从继承的类中实现抽象方法
- 访问实现类中类的方法
- 依赖于构造函数参数的类方法的特殊实现
- C++模板类专用化:为什么需要重新实现常见方法
- 如何指定模板类在c++中实现某些方法
- 如何实现将数据从用户应用程序传输到类内部存储器的类方法
- 抽象类方法用其他基类的子类实现
- 在c++中使用list实现类的方法时出现以下错误
- 如何在可变上下文中使用抽象类时实现抽象方法
- 如何强制所有派生类实现虚方法
- 从共享库加载方法,该方法调用在子类中实现的方法
- 类方法定义后的实现