c++ - 在 C++ 中,setter 和 getter 以及构造函数之间有什么区别?

标签 c++ oop

如果我们使用构造函数,是否需要使用 setter 和 getter。我对这些术语完全感到困惑,有人可以详细说明一下吗。

最佳答案

If we use constructors do we need to use setters and getters

首先,你不能拥有一个没有构造函数的类,当你不提供时,任何编译器都会为你生成它们。无论是否定义自己的构造函数,都不应使用不相关的 setter 和 getter。当你设计一个类时,你设计它的接口(interface),然后添加成员变量来实现该行为,这些成员是类的内部表示,外部世界不应该知道它们——这就是数据封装的目的,这就是我们制作它们的原因私有(private)或 protected 。当您先添加成员然后盲目地提供 getter 和/或 setter - 这是一种错误的 OOD 方法。

关于c++ - 在 C++ 中,setter 和 getter 以及构造函数之间有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53615742/

相关文章:

c++ - 如何在 Turbo C++ 中使用 Unicode?

java - 调试 Java/处理对象巡视屏幕的输出

php - 将数据库调用添加到 OO PHP 的最佳方法

design-patterns - 垂头丧气可以吗?

php - 通过静态和非静态方法访问静态属性?

c++ - STL 与 STL 端口 : Which one is more lightweight

c++ - 调查错误的 free() 指针引用

c++ - 使用带有外部 C++ 库的 Rcpp 构建 R 包时 undefined reference

java - Java中调用特定的类方法(不带多态)

c++ - 我需要在新类中声明构造函数和析构函数吗?