Несколько классов в одном файле .cpp

Мне было интересно, если считается плохой практикой иметь несколько классов в одном файле .cpp. У меня есть опыт работы в Objective-C, где это редко делается.

5

Решение

Это делает код менее читабельным, потому что вы обычно ожидаете, что определение класса будет в заголовке с тем же именем, а реализация в файле реализации с тем же именем.

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

11

Другие решения

Как указывает другой ответ, это делает код менее читабельным.

Важно также учитывать область действия вложенного класса:

Вложенный класс объявляется в области действия другого класса. Имя
вложенного класса является локальным по отношению к окружающему классу. Если вы не используете
явные указатели, ссылки или имена объектов, объявления в
вложенный класс может использовать только видимые конструкции, включая имена типов,
статические члены и перечислители из включающего класса и глобальные
переменные.

Источник

0

По вопросам рекламы [email protected]