【发布时间】:2019-11-21 19:12:31
【问题描述】:
我是一名新程序员,所以请原谅我问了一个非常简单的问题。我正在查看我正在寻求实现的方法的一些示例代码,我看到下面看到的标题(第一个代码块)。
class CIndividual
{
public:
CIndividual();
virtual ~CIndividual();
public:
vector<int> profit;
vector<int> weight;
public:
CRandomNumber Rnd;
bool dominated;
};
为什么 public 被多次使用?我对这种编码结构感到非常困惑,希望这个问题不是太基础。
【问题讨论】:
-
它们是多余的。第一个就足够了。目前尚不清楚作者为什么添加其他人;这不是常见的做法。
-
唯一与多个
public声明相关的情况是使用 Qt 之类的工具包,除了public:之外,您还可以看到public slots:。 -
也许他们中的一些人曾经说私有或受保护,但是一个草率的维护者只是将其更改为公共而不是删除它。无论哪种方式,理想情况下都应该只有一份公开声明。
-
可能是出于“可读性目的或如何为某些目的划分变量或函数。也许是公共的://内存。变量来存储特定的东西。//私有://内部使用的一些函数,公共的: // 一些可以使用的静态函数,或类似的东西。但理想情况下应该是一个 public: 并且可能有多个注释行,例如 // declaring mem. variables for.... // declaring functions for ... 或者也许like for public: // 这个类,public: // 继承的纯虚函数,需要实现等。
标签: c++ header-files access-modifiers