Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
punhin
0 / 0 / 0
Регистрация: 30.08.2010
Сообщений: 12
#1

Какая должна быть структура сложного (объемного) проекта? - C++

01.09.2010, 02:32. Просмотров 1115. Ответов 2
Метки нет (Все метки)

Работа программы начинается с выполнения функции main(). В самой программе куча функций и классов. Как организовать структуру достаточно сложного проекта (программы), чтобы не "утонуть" в ней?
Насколько я понимаю, удобнее всего каждый осмысленный блок выделять в отдельный файл + хедеры также отдельным блоком, чтобы не мешались
То есть получается нечто такое:
main.cpp - укрупненная логика работы программы, по модулям
class.hpp - хедеры (т.е. объявления классов и их интерфейсов)
class_1.cpp - собственно код класса №1
...
class_m.cpp - код класса № m
function_1.cpp и т.д. - код функций, выделенных в отдельные файлы...

т.е. фактически в проекте может быть куча мелких файлов, и это нормально...

Я думаю в правильном направлении? Если что - поправьте меня, пожалуйста.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.09.2010, 02:32
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Какая должна быть структура сложного (объемного) проекта? (C++):

Структура, доступная из всех файлов проекта ("глобальная" структура) - C++
Есть четыре структуры (body, gun, enemy, st), описанные в main.cpp. К main.cpp подключен хедер save.h, в котором имеется функция void...

Точка входа должна быть определена - C++
Всем привет ,заранее прошу прощения за тему ,которая уже поднималась ,но вот возникла ошибка , LNK1561 точка входа должна быть...

Точка входа должна быть определена - C++
Вообщем начал изучать SDL.Во время выполнение первой же программы случилась как я раньше считал глупая ошибка.Вот код CApp.cpp: ...

Точка входа должна быть определена - C++
#include <iostream> using namespace std; template<class T> T min2(T a,T b) { return a<b? a: b; } int main() ...

Точка входа должна быть определена - C++
Всем привет. На YouTube нашел видео. Стало интересно. Там был приложен файл исходного кода .срр. Я скачал и попытался скомпилировать и у...

Массивы C++. Ошибка: M должна быть константой - C++
Пытаюсь сделать массив, вот что вышло. Выбивает ошибку, что M должна быть константой (15 строка). Как это исправить? #include<iostream> ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Jupiter
Каратель
Эксперт С++
6553 / 3973 / 226
Регистрация: 26.03.2010
Сообщений: 9,273
Записей в блоге: 1
Завершенные тесты: 2
01.09.2010, 02:39 #2
Цитата Сообщение от punhin Посмотреть сообщение
т.е. фактически в проекте может быть куча мелких файлов, и это нормально...
а почему бы и нет, к примеру создайте пустой MFC проект в студии, и увидите сколько там хедеров и .срр файлов.
Vladimir.
155 / 155 / 10
Регистрация: 24.11.2009
Сообщений: 375
01.09.2010, 06:59 #3
Как организовать структуру достаточно сложного проекта (программы), чтобы не "утонуть" в ней?
Насколько я понимаю, удобнее всего каждый осмысленный блок выделять в отдельный файл + хедеры также отдельным блоком, чтобы не мешались
Всё что ниже имхо, прекрасно подходит для сольного написания программ объемом примерно до 150 часов работы.
Организовывайте так, что бы Вам было удобно. Удобно писать, удобно проверять, удобно изменять. Не дробите по фаилам без надобности, (не умножайте ложных сущностей). Хотите не потерятся в своем коде? Пишите осмысленный коментарий. Используйте простые конструкции, проверяйте входные данные функций, не забивайте хэдэры излишней информацией. Разделяйте код на пишущийся-рабочий-оттестированый. Избегайте препроцессора.

И обязательно время от времени показывайте кому-нибудь свой код...
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
01.09.2010, 06:59
Привет! Вот еще темы с ответами:

Точка входа должна быть определена - C++
Так как тупая проблема, спрашиваю в форуме для новичков. Я понимаю что смысл проблемы в том что нет или криво задан мэйн, но я не вижу тут...

Error Точка входа должна быть определена - C++
выводит такую ошибку, что делать? вот код #include "stdafx.h" #include <iostream> #include <time.h> using namespace...

Функция strcpy () - строка должна быть пустой? - C++
Здравствуйте! Возник вопрос: пусть имеются две непустые строки s1 и s2. Правильно ли копировать содержимое строки s2 в строку s1? Или...

народ напишите,работа должна быть выполненна в Pascale... - C++
дан код символа.Написать программу,выводящую сам символ.


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

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

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