Какие идиомы, заблуждения и ошибки, связанные с C ++, вы узнали из опыта?

Какие идиомы, заблуждения и ошибки, связанные с C ++, вы узнали из опыта?

Пример:

class A
{
  public: 
  char s[1024];
  char *p;

  A::A()
  {
    p = s;
  }

  void changeS() const
  {
    p[0] = 'a';
  }

};

Даже знаю, что changeS - это постоянная функция-член, она меняет значение объекта. Таким образом, функция-член const означает только то, что она будет обрабатывать все переменные как const, и это не значит, что она на самом деле будет поддерживать все члены const. (почему? Ключевое слово const в функции-члене обрабатывает char * p; как char * const p; а не как const char * p;

Следовательно, это означает, что p не может указывать на что-то еще. И не то, что вы не можете изменить данные р.

Ответы на вопрос(16)

Ваш ответ на вопрос