Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.58/12: Рейтинг темы: голосов - 12, средняя оценка - 4.58
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550

Организация проекта на C++

15.01.2010, 21:29. Показов 2604. Ответов 7
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Как правильно организовать большой проект?
Незная этого я создал так:
stdafx.h включает в себя все заголовки
один из включаемых файлов - globals.h содержит все extern'ы
каждый .cpp включает в себя stdafx.h
.cpp - 13 файлов
.h - 19 файлов

Это удобно, но... допустимо или криво? В последнее время проект стал долго компилится (почти минута). Очень трудно когда ждешь минуту а там какая нибудь банальная ошибка.
Не сильно юзаю template <> так что наврятли из за этого. Подскажите как можно организовать проект удобно для себя и удобно для компилятора (чтобы побыстрее)...
PS. VS 2008, проц двуядерный по 1.8 ГГц на ядро. 2 Гб ОЗУ
1
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.01.2010, 21:29
Ответы с готовыми решениями:

Организация проекта с cmake
Доброго времени суток,помогите разобраться с вопросом:как правильно организовать проект с cmake.Проект состоит из двух файлов (сервер и...

Правильная организация cmake проекта
Вопрос от веб разработчика избалованного грейдлами и мавенами по правильной организации структуры cmake проекта в части работы с...

Правильная организация файлов проекта, CMake
Здравствуйте... Из прочитанной информации по всему простору интернета у меня теперь в голове каша... Прошу ответить людей, работающих над...

7
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
15.01.2010, 21:33
Цитата Сообщение от insideone Посмотреть сообщение
Очень трудно когда ждешь минуту а там какая нибудь банальная ошибка.
почитай книжку Майерса "Эффективное использование С++".
в ней говорится, как уменьшить зависимости между модулями, чтобы все они не требовали перекомпиляции при изменении в одном из файлов.
2
1261 / 799 / 108
Регистрация: 16.09.2009
Сообщений: 2,010
15.01.2010, 21:39
Правильно zim22: прежде чем приступать к проектам на C++, нужно знать,
что C++ это не Java, и сборщика мусора там нет.
0
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
15.01.2010, 21:42  [ТС]
Цитата Сообщение от Genius Ignat Посмотреть сообщение
Правильно zim22: прежде чем приступать к проектам на C++, нужно знать,
что C++ это не Java, и сборщика мусора там нет.
Имеется в виду что ко всем классам нужно писать деструкторы и все new должны завершаться delete? Никогда не кодил на Java)

Книжку попробуем изучить, надеюсь она не толстенная
0
depict1
 Аватар для zim22
281 / 146 / 4
Регистрация: 11.07.2009
Сообщений: 606
15.01.2010, 21:42
Цитата Сообщение от Genius Ignat Посмотреть сообщение
C++ это не Java, и сборщика мусора там нет.
сборщик мусора не причём. компиляция долгая.
***
Цитата Сообщение от insideone Посмотреть сообщение
Книжку попробуем изучить, надеюсь она не толстенная.
тебе нужно "правило 31". страница 144.
isbn книги 5-94074-304-8
1
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
15.01.2010, 22:43  [ТС]
В целом понял что нужно:
1. Вместо включения файлов с необходимыми классами писать преварительное объявление вида class x;
2. Создавать 2 класса. Сам класс который пишешь - типа реализация полная, а кроме того обертку которая просто дает указатель на главный класс.
По второму пункту мудрено как то, надо попробовать... как бы это удобнее подстроить под себя. Проект то уже разросся и тяжеловато все переписать будет.
0
MCSD: APP BUILDER
 Аватар для IT_Exp
8795 / 1074 / 104
Регистрация: 17.06.2006
Сообщений: 32,602
15.01.2010, 22:52
insideone,

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

Включить прекомпилированные заголовки
Просто организовать свалку в stdafx недостаточно.
0
Автор FAQ
 Аватар для insideone
3687 / 964 / 114
Регистрация: 10.01.2010
Сообщений: 2,550
15.01.2010, 23:46  [ТС]
Включены они... (/Yc) Строго говоря я их для прикола выключал - разницы не особо если честно =(
Видимо как раз устраивать свалку в stdafx не стоит хоть это и удобно очень... раньше было все отлично, но при 240 КБ кода видимо уже нет))

Добавлено через 47 минут

Не по теме:

/*жаль нельзя переносить темы. в общем то по невнимательности создал тут хотя хотел в корне*/

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
15.01.2010, 23:46
Помогаю со студенческими работами здесь

Организация команды, Организация проекта
Здравствуйте, ребята! В общем, имея идею, но не имея никаких материальных средств и контактов, с чего стоит начать организацию проекта будь...

Организация проекта в C#
Доброго времени суток! Я работаю над проектом, в котором будет несколько достаточно объемных классов. Решил разбить их на несколько...

Организация проекта
Всем доброго времени суток. Итак идея проекта: Есть 2 отдела со своей локальной сетью каждый. Назовем - отделы А и B. У отдела А...

Организация проекта на С++
Добрый вечер. Использую WinAvr. Пытаюсь разобраться с с С++. Столкнулся с такой проблемой. В программе используется некоторая...

Организация проекта
Всем привет. Делаю прогу. Пишу ее в основном в целях опыта, используя ООП(ну как получается). Тут проблема: делаю ее по частям классами,...


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

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru