0 / 0 / 1
Регистрация: 12.10.2015
Сообщений: 133
|
|
1 | |
Объясните пожалуйста что такое многофайловый проект24.11.2015, 21:37. Показов 2188. Ответов 8
Метки нет Все метки)
(
Объясните пожалуйста что такое многофайловый проект. Гуглила, толком ничего не нашла.
Есть вот такое задание: В текстовом файле хранится список книг в библиотеке: название, автор, количество имеющихся экземпляров, издательство, жанр, год издание. Во втором файле сохраняется информация о выдаче книг: дата выдачи, дата возврата, название книги, автор, фамилия и имя читателя. Путь к файлам задается пользователем с клавиатуры. Программа состоит из нескольких файлов. В первом должно быть реализовано работу главной функции и вызов всех других функций. В втором файле должны содержаться функции, которые обеспечивают выполнение следующих действий: - Определение популярности каждого литературного жанра и вывода данных, отсортированных по популярности; - Вывод информации о книгах, которые читатели активно заказывали в течение заданного периода времени; - Определение читателей, не возвращали книги вовремя, и для каждого читателя количество случаев, по которым отсортировать данные, и вывести их во второй файл; - Вывод информации о каждом авторе, книги которого имеются в библиотеке, вместе с количеством имеющихся экземпляров книг каждого автора и количеством заказов его книг. Данные отсортировать в алфавитном порядке по фамилии автора. Работу с программой реализовать с помощью меню. Заполнение файла новыми данными реализовывать также с помощью меню. Подскажите на какие файлы его нужно делить.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
24.11.2015, 21:37 | |
Ответы с готовыми решениями:
8
Объясните пожалуйста, что такое i, j, k в программе объясните пожалуйста. что такое struct STUDENT? Объясните пожалуйста как тут работает сортировка и что такое ostream_iterator<string> Многофайловый проект в VS |
5 / 5 / 3
Регистрация: 23.10.2015
Сообщений: 35
|
|||||||||||
24.11.2015, 21:40 | 2 | ||||||||||
main.cpp - реализация меню.
my_funk.h - хеадер файл, в котором все необходимые другие хедеры, содержит прототип и саму функцию(1 шт). На каждую функцию свой хедер файл. Его обязательно нужно добавить в main.cpp:
Обязательное правило защиты от повторной загрузки хедера:
0
|
0 / 0 / 1
Регистрация: 12.10.2015
Сообщений: 133
|
|
24.11.2015, 22:24 [ТС] | 3 |
Erami, а как их писать? просто отдельно програмки, потом открывать их в main и тоже его сохранить?
если так, то как их сохранять? или нужно каждую програмку записывать как файл и открывать в main файлы? и что это за расширение .h?
0
|
5 / 5 / 3
Регистрация: 23.10.2015
Сообщений: 35
|
|
24.11.2015, 22:31 | 4 |
![]() Решение
Nastya15684, .h это самый обычный .cpp, только который можно инклюдать(#include)
Просто на проект правой кнопкой мыши, добавить новый файл, к нему расширение .h Писать как обычный исходник. А что бы добавить к мейну - #include "nazvanie.h"
1
|
0 / 0 / 1
Регистрация: 12.10.2015
Сообщений: 133
|
|
24.11.2015, 22:40 [ТС] | 5 |
Erami, вроде поняла, спасибо)
0
|
48 / 48 / 6
Регистрация: 24.12.2009
Сообщений: 495
|
|
24.11.2015, 22:56 | 6 |
Nastya, пишешь много всяких функций. Их становится много. Вы просто все эти функции раскидываете по разным файлам, а в главном файле, где у вас главная функция main(), подключаете эти файлы, что бы компилятор знал, где все эти функции. Подключение файлов в самом верху командой #include
Например : #include "c:\my_computer\rabochi_stol\MyFunction.h" Как-то так ![]()
0
|
Диссидент
![]() 27182 / 16941 / 3743
Регистрация: 24.12.2010
Сообщений: 38,123
|
|
25.11.2015, 01:27 | 7 |
![]() РешениеНе по теме: Боже мой! Какая каша в головах! Нет, у ТС, конечно, не каша - вода. Сегодня мне ее размешать - не в силах! На форуме есть неплохие материалы по этому поводу. Один из них - то ли блог, то ли FAQ уважаемого Evg Добавлено через 1 час 7 минут Не спится... Попробую, однако... Директива препроцессора #include ... делает ровно то, что от нее и ожидается. Она просто вставляет указанный файл в ваш исходный код. И вы можете вставлять .h, .c, .cpp, .hpp, .txt и даже .jpg -файлы, ей это все по фигу. Она вставляет то, что ей приказано. Да, вот задумался, знают ли уважаемые господа, что такое "препроцессор"? На всякий случай поясню. Трансляция исходного модуля(кода) состоит из 2-х этапов (в самом деле, больше, но пока, в целях нашего образования, будем считать, что это так). Сначала - препроцессор. Он шерстит ваш код на наличие своих #-директив. И выполняет их тупо, совершенно не разбираясь, что вы там написали, и имеет ли это отношение к какому-то языку. И то, что у него получилось, он отдает на растерзание транслятору А транслятор-то посерьезней будет. Ему ж надо из вашего кода машинные команды создавать! И вот он встретил функцию, и ему непременно надо знать(дотошный какой!) сколько у нее аргументов и каков их тип. То есть об этом ему надо рассказать раньше, чем он эту функцию встретил. И пока ваш проект состоит из одного файла, вы можете просто эти прототипы функций вставлять в этот файл повыше, или даже просто писать ихнюю (функций) реализацию до использования. Транслятор - не совсем уж дурак, он поймет. Но пока у вас сотня строк кода, даже 2 сотни, даже 500, это все терпимо. А даже самый простой проект, делающий хоть что-то полезное, имеет не менее 10000 строк кода. И вот тогда, чтоб как-то его структурировать, вам захочется его разбить на несколько файлов-исходников (смешное слово, почти как "исподники", но по смыслу - близко). И всюду есть эти функции, черт их побери! Что же, в каждом из исходных файлов писать прототипы этих функций? Можно. Но ни дай Бог во время работы над проектом в одной из функций ваших изменить количество и/или тип аргументов! Энто повсюду надо будет лазить, и всюду менять. А ошибка - ох как вероятна! Поэтому придумали. Все прототипы в одном месте собрать. Хедер (h-файл называется). Который включается (инклюдится) во все c, cpp-файлы вашего проекта. И если что не так, вас транслятор схватит за руку - несоответствие! И вы поймете, и исправите. Все. Удачи всем!
3
|
0 / 0 / 1
Регистрация: 12.10.2015
Сообщений: 133
|
|
25.11.2015, 14:28 [ТС] | 8 |
Байт, Спасибо большое!) Буду пробывать
Добавлено через 2 часа 16 минут а подскажите в моем задании должен быть один срр файл и один хедер, в котором будут все функции, или один срр и на каждую функцию свой хедер?? В текстовом файле хранится список книг в библиотеке: название, автор, количество имеющихся экземпляров, издательство, жанр, год издание. Во втором файле сохраняется информация о выдаче книг: дата выдачи, дата возврата, название книги, автор, фамилия и имя читателя. Путь к файлам задается пользователем с клавиатуры. Программа состоит из нескольких файлов. В первом должно быть реализовано работу главной функции и вызов всех других функций. В втором файле должны содержаться функции, которые обеспечивают выполнение следующих действий: - Определение популярности каждого литературного жанра и вывода данных, отсортированных по популярности; - Вывод информации о книгах, которые читатели активно заказывали в течение заданного периода времени; - Определение читателей, не возвращали книги вовремя, и для каждого читателя количество случаев, по которым отсортировать данные, и вывести их во второй файл; - Вывод информации о каждом авторе, книги которого имеются в библиотеке, вместе с количеством имеющихся экземпляров книг каждого автора и количеством заказов его книг. Данные отсортировать в алфавитном порядке по фамилии автора. Работу с программой реализовать с помощью меню. Заполнение файла новыми данными реализовывать также с помощью меню.
0
|
543 / 486 / 104
Регистрация: 05.05.2014
Сообщений: 1,110
|
|
25.11.2015, 15:06 | 9 |
Все по заданию. Вообще-то разбивка проекты на файлы - дело разработчика. Но в твоем случае удобно сделать 1 хедер и 2 срр.
Если сразу тебе сложно, пиши все в одном. Потом разобьешь. Но описания классов и методов лучше сразу в хедер.
1
|
25.11.2015, 15:06 | |
Помогаю со студенческими работами здесь
9
Многофайловый проект
Многофайловый проект Многофайловый проект Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |