Почему в заголовочном файле несколько "публичных" ключевых слов? - PullRequest
3 голосов
/ 12 июля 2019

Я новый кодер, так что прости меня за вопрос, который может быть очень простым. Я рассматриваю пример кода для метода, который я пытаюсь реализовать, и вижу заголовок, показанный ниже (первый блок кода).

class CIndividual  
{

public:
    CIndividual();
    virtual ~CIndividual();

public:
         vector<int> profit;
       vector<int> weight;    

public:
    CRandomNumber Rnd;
    bool dominated;
};

Почему публичное использование используется несколько раз? Я очень смущен этой структурой кодирования и надеюсь, что этот вопрос не слишком простой.

1 Ответ

5 голосов
/ 12 июля 2019

В приведенном выше случае достаточно только 1, первого. Все остальные излишни. Некоторые люди предпочитают переписывать эти ключевые слова для явного «разделения блоков» методов и переменных-членов, но в этом нет реальной необходимости. Просто вопрос предпочтений.

class MyClass
{
public:
  void myPublicMethod1();
  void myPublicMethod2();

private:
  myPrivateMethod();

private:                         // redundant, just group variables
  int somePrivateVariable;       // the first "private" should be enough as well
  string anotherPrivateVariable;

public:                          // not redundant here, but the variables
  int publicMember1;             // could be moved to the first group, if desired.
  bool publicMember2;
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...