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

Правильное подключение заголовочных файлов - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Как перевести строку в целочисленный массив http://www.cyberforum.ru/cpp-beginners/thread1238424.html
А как перевести строку в целочисельный массив? Проверьте здесь http://ideone.com/ /* package whatever; // don't place package name! */ import java.util.*; import java.lang.*; import java.io.*; /* Name of the class has to be "Main" only if the class is public. */
C++ Вернуть из функции значение; при этом прервать саму функцию Всех приветствую! Прощу прощения за глупый вопрос, но не знаю на него ответа. Требуется вернуть из функции значение при этом прервать саму функцию. Есть к примеру код (нигде не используется в проектах, написал для понимания вопроса): bool VarProb=Proba(7); bool Proba(int var) { for (int i=0; i<100; i++) { for (int j=0; j<100; j++) { http://www.cyberforum.ru/cpp-beginners/thread1238420.html
C++ Наибольший элемент матрицы в левом углу - объяснить код программы
Здравствуйте. У меня есть программа, но я не могу понять как она работает. Пожалуйста, объясните ее и, если можете, упростите... #include<iostream> #include<stdlib.h> using namespace std; int main() { int **matrix; // это указатель что ли? почему его здесь объявляют, а не в 16 строке? int width, height;
Можно ли с помощью UPnP открыть порт C++
можно ли в c++ открыть порт (UPnP) без сторонних библиотек, если да то как?
C++ Скопировать содержимое одного файла в любое место в другом файле http://www.cyberforum.ru/cpp-beginners/thread1238370.html
Мне надо скопировать содержимое одного файла в любое место в другом файле. Пример: Файл А: 12345 54321 22222 Файл Б:
C++ Вставка в map и ошибка "Отсутствуют экземпляры конструктора" Подчёркивает map в 3тей строчке и пишет ошибку 1 IntelliSense: отсутствуют экземпляры конструктора "std::pair<_Ty1, _Ty2>::pair ", соответствующие списку аргументов типы аргументов: (std::wstring) c:\Users\Admin\Desktop\CPP\CPP-Materials\Map\Map\ConsoleApplication3\ConsoleApplication3.cpp 16 17 ConsoleApplication3 чё не так делаю непойму map < wstring, less<wstring> >... подробнее

Показать сообщение отдельно
Evg
Эксперт С++Автор FAQ
 Аватар для Evg
16825 / 5246 / 321
Регистрация: 30.03.2009
Сообщений: 14,126
Записей в блоге: 26
05.08.2014, 11:18     Правильное подключение заголовочных файлов
Цитата Сообщение от Убежденный Посмотреть сообщение
Разумеется !
Это снижает зависимости, а еще может существенно повлиять на время сборки проекта.
Один глобальный хидер, в который включено все, что можно - это обычно бывает хорошо
лишь в специфических ситуациях, например если используются precompiled headers.
В остальных случаях лучше не плодить ненужных включений заголовков, особенно если в
какой-то конкретной единице трансляции они вообще не используются.
+1

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

Формировать один файл, который является свалкой для подключения системных хидеров - это порочная практика. Она годится только на начальных уровнях обучения программированию, чтобы не тратить время на вкуривание того, как правильно проектировать программу. Когда выходишь на более-менее серьёзный уровень программирования, то от таких вещей надо отказываться. Особенно для языка Си++, т.к. в стандартных хидерах идут огромные описания шаблонных классов и функций. Если в каждый модуль программы бездумно будет подключаться по 20 заголовочных файлов (через один общий файл-свалку), то для каждого модуля компилятор будет тратить время на пережёвывание всего того барахла, которое растёт из этих файлов, в то время как всё это барахло в реальности оказывается ненужным
 
Текущее время: 01:02. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru