Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.82/11: Рейтинг темы: голосов - 11, средняя оценка - 4.82
1 / 1 / 0
Регистрация: 24.07.2012
Сообщений: 8
1

Как правильно организовать большой проект?

24.07.2012, 09:48. Просмотров 1927. Ответов 5
Метки нет (Все метки)

В будущем хочу участвовать в разработке игр - начал изучать С++, вопрос тут такой, как правильно организовать структуру достаточно большого проекта? в учебниках, с примерами в 1-2 файла все просто, но когда их становиться больше - я начинаю путатся.

Например, пробую сделать примитивную 3Д модельку солнечной системы.
есть некий базовый класс 3Д объекта, ответственный за перемещение и отрисовку 3Д-модели.
есть несколько более конкретных классов - планеты, астероиды, и т. д (планируется сделать достаточно много объектов с разным поведением). все они используют базовый класс 3Д объекта.
Далее есть сам класс звездной системы, который, в свою очередь, использует классы планет и астероидов.

Каждый класс я описываю в отдельном файле:
Заголовок и реализация 3Д модели:
Object3D.h
Object3D.cpp
Астероид:
Asteroid.h - тут делаю #include Object3D.h
Asteroid.cpp - тут делаю #include Asteroid.h
Планта:
Planet.h - тут делаю #include Object3D.h
Planet.cpp - тут делаю #include Planet.h
Ну и система:
Plsystem.h - тут делаю #include Asteroid.h
#include Planet.h
Plsystem.cpp - тут делаю #include Plsystem.h

т.е. вроде бы получается, что по цепочке инклудов в файл Plsystem.cpp несколько раз линкуется Object3D.h, имеет ли это значение, или компилятор сам лишнее уберет?
И где можно почитать про правильную организацию достаточно сложных проектов?
Работаю в MSVS 2010
1
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.07.2012, 09:48
Ответы с готовыми решениями:

Как правильно организовать многофайловый проект?
Добрый вечер дорогой форум. Сразу скажу я новичек. Пишу курсовик, сроки, как всегда поджимают...

Как скомпилировать большой проект из исходников?
Скачал исходники проекта и задался вопросом как их скомпилировать. Раньше компилировал только свои...

Как правильно организовать БД?
Есть база данных о предприятии. В ней есть данные об отделах и о сотрудниках. С сотрудниками всё...

Как правильно организовать?
У меня есть несколько классов и у них практически одинаковые функции, которые отличается парой...

5
Каратель
Эксперт С++
6593 / 4014 / 401
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
24.07.2012, 10:48 2
Цитата Сообщение от gundos111 Посмотреть сообщение
т.е. вроде бы получается, что по цепочке инклудов в файл Plsystem.cpp несколько раз линкуется Object3D.h, имеет ли это значение, или компилятор сам лишнее уберет?
для этого в хедер-файлах ставят стражи включения
C++
1
2
3
4
5
6
7
#ifndef FILENAME__HPP
#define FILENAME__HPP
 
class Object3D {
//...
 
#endif //FILENAME__HPP
по макросу FILENAME__HPP препроцессор определит включался ли этот хедер-файл или нет
0
DiffEreD
24.07.2012, 18:31
  #3

Не по теме:

А что лучше использовать - #pragma once или #ifndef #define?

0
31 / 31 / 3
Регистрация: 19.05.2012
Сообщений: 67
24.07.2012, 18:34 4
Цитата Сообщение от yuron_477 Посмотреть сообщение
А что лучше использовать - #pragma once или #ifndef #define?
#pragma может не поддерживаться некоторыми компиляторами и системами. А второй вариант универсален.
0
5470 / 4865 / 831
Регистрация: 04.06.2011
Сообщений: 13,587
25.07.2012, 04:40 5
Цитата Сообщение от gundos111 Посмотреть сообщение
Работаю в MSVS 2010
Компилировать проект пробовали?
0
1 / 1 / 0
Регистрация: 24.07.2012
Сообщений: 8
29.07.2012, 09:55  [ТС] 6
Спасибо за ответы, сделал проверки через
#ifndef
#define
#endif
Цитата Сообщение от alsav22 Посмотреть сообщение
Компилировать проект пробовали?
Да, проект и компилится и запускается, куда ж он денется.
Хотел узнать именно как избежать "избыточных" инклудов, или просто не обращать на них внимания, поскольку пока слабо представляю процес сборки ехешника.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
29.07.2012, 09:55

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Как правильно организовать БД?
Извините за глупый, наверное, вопрос. Я самоучка и только начинаю познавать науку... Как...

Как организовать правильно запрос
Доброго всем. Никак не могу понять, как ЭТО сделать... Есть таблица, есть форма с запросом. Идет...

Как правильно организовать исключение
Подскажите пожалуйста, как правильно организовать такое исключение: Создан массив, если в нем есть...

Как правильно организовать БД из 4-х таблиц?
ИСПОЛЬЗУЕТСЯ: Access Имеется три таблицы: - 00_tb1; - 00_tb2; - 00_tb3; ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.