Макет проекта C ++ - PullRequest
       5

Макет проекта C ++

1 голос
/ 17 сентября 2010

Я полностью сбит с толку относительно правильного способа компоновки проекта C ++.

Все мои классы были в отдельных файлах .cpp с их определениями в файлах .h. Затем у меня был один "header.h", который содержал все заголовки классов, внешние зависимости и несколько других вещей. Но я не смог использовать имена классов в заголовочных файлах, где мне нужно было объявить указатель на один из них.

Может кто-нибудь объяснить, пожалуйста, правильный объектно-ориентированный макет для проекта C ++.

1 Ответ

3 голосов
/ 17 сентября 2010

Вы можете решить проблему "не удалось использовать имена классов в заголовочных файлах, где мне нужно было объявить указатель на один из них", используя предварительные объявления классов , например:

class myClass;

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...