У меня есть небольшая проблема с файлами header и cpp, Я начал создавать небольшую текстовую игру, и я хотел сделать работу более понятной, создав больше файлов и разделенных файлов для каждого класса (Player.cpp, Monster.cpp Entity и т. д.).Как обрабатывать файлы cpp и файлы заголовков
Итак, у меня получилось много #include директива в каждом файле cpp (я еще не использовал заголовки).
мне нужна была функция рэнд так я добавил STDLIB к каждому классу, и iostream в классе игроков и т.д ..
так я закончил с большим количеством двойных и тройных использований той же библиотеки, что я должен сделать, чтобы избежать этого? Есть ли способ избежать этого вообще? (создание отдельного класса для случайных, например, не работает, потому что мне нужно добавить его в классы, а также любым способом).
Заранее благодарен!
EDIT: Но если у меня есть что-то вроде этого ?:
main.cpp -> Player.h -> stdlib.h
-> Monster.h -> stdlib.h
что я могу сделать, чтобы сделать stdlib.h быть во всех классах без предупреждения или ошибок?
Другими словами, как я могу создать заголовок без включения в него одной и той же библиотеки? (Player и Monster - разные классы, и им обоим нужен stdlib, что мне делать, чтобы включить только одну библиотеку?)
Сначала введите заголовки, используя [include guard] (http://en.wikipedia.org/wiki/Include_guard). Во-вторых, вы можете вложить свои вложения - например, написать (значимый) заголовочный файл, например. Player.h, включая только заголовки, необходимые для компонента Player. Таким образом, компоненты, использующие Player, должны включать только Player.h ... и не все, что используется для реализации Игрока, которые могут измениться. – Jost
Я читаю книгу под названием C++ для нетерпеливых, но они не научили меня, как ее использовать, или сказали мне использовать ее. Я просто хотел сделать это более понятным для меня. Есть ли какой-нибудь учебник для этого? –
Для книг и руководств вы можете ознакомиться с известным списком [The Definitive C++ Book Guide and List] (http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list). .. Поднимите подбородок вверх ;-) – Jost