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

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

Войти
Регистрация
Восстановить пароль
 
mytest
5 / 5 / 0
Регистрация: 10.02.2013
Сообщений: 36
#1

Есть необходимость? - C++

07.10.2013, 21:12. Просмотров 226. Ответов 4
Метки нет (Все метки)

Везде рекомендуют создавать класс (любой элемент) в ".h" файлах, а описывать уже непосредственно в ".cpp", есть ли в этом необходимость, почему нельзя описать все классы и их содержимое в "головах", а использовать потом в единственном ".cpp" файле? Почему имеено так? И главное: чем гразит такие использование. Спасибо.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2013, 21:12     Есть необходимость?
Посмотрите здесь:

C++ Есть ли в данном массиве элемент, равный заданному числу? Если есть, то вывести номер одного из них.
есть код и есть ошибка нужно найти дырку C++
Возникла необходимость в основном коде вызвать функцию и чтобы код продолжал выполнение, НЕ ДОЖИДАЯСЬ окончания работы этой функции C++
Определить, есть ли в заданном предложении цифры. И если есть, найти их сумму C++
Необходимость реализации виртуальнй функции C++
C++ В каких случаях возникает необходимость в создании своего деструктора?
Необходимость перегрузки оператора присваивания "=" C++
C++ Проверить, есть ли необходимость менять настройки системы
Есть ли смысл помечать функции как inline, если их прототип уже есть в .h файле? C++
C++ Использование string в многофайловом приложении. Необходимость подключения библиотек и пространства имён
C++ Необходимость ассоциативного контейнера в поставленной задаче
Необходимость в использовании виртуальных деструкторов и их правильное использование C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
gromo
 Аватар для gromo
368 / 267 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
07.10.2013, 21:14     Есть необходимость? #2
Цитата Сообщение от mytest Посмотреть сообщение
почему нельзя описать все классы и их содержимое в "головах", а использовать потом в единственном ".cpp" файле?
потому что такой заголовочный файл уже будет "срр" файлом. Ведь в нем будут определения членов класса, которые должны быть в программе в единственном экземпляре
Убежденный
Системный программист
 Аватар для Убежденный
14676 / 6622 / 1049
Регистрация: 02.05.2013
Сообщений: 10,903
Завершенные тесты: 1
07.10.2013, 21:14     Есть необходимость? #3
реализация класса в .h файле хорошо или плохо?
gromo
 Аватар для gromo
368 / 267 / 24
Регистрация: 04.09.2009
Сообщений: 1,214
07.10.2013, 21:16     Есть необходимость? #4
Цитата Сообщение от mytest Посмотреть сообщение
Почему имеено так?
потому что это одно из фундаментальнейших достижений языка Си и UNIX культуры - все есть файл и Раздельная компиляция, которая достигается этим.
Fyret
184 / 170 / 13
Регистрация: 30.07.2013
Сообщений: 359
07.10.2013, 21:19     Есть необходимость? #5
Когда компьютеры были большими, а память - маленькой, это было необходимостью. Потом стало привычкой. А привычка - сильная вещь.

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

Некоторые (любители C# и Java) и на C++ пишут все классы в хедерах. Мотивируют тем, что так компиляция идет быстрее. Я сам время компиляции не сравнивал, но в таком стиле писал. Ничего страшного.
Yandex
Объявления
07.10.2013, 21:19     Есть необходимость?
Ответ Создать тему
Опции темы

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