25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|||||||||||
1 | |||||||||||
Разделить программу на файлы10.01.2013, 22:07. Показов 1026. Ответов 14
Метки нет Все метки)
(
Помогите мне разделить программу на три файла: сам класс, функции к нему, и функция main.
Сам класс
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
|
|
10.01.2013, 22:07 | |
Ответы с готовыми решениями:
14
Разделить файлы по заголовкам как разделить код на файлы? Не могу разделить template метод в .h и .cpp файлы |
Croessmah
|
10.01.2013, 23:04
#2
|
Не по теме: Операция копипаста? Или что Вы не можете сделать?
1
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|
10.01.2013, 23:10 [ТС] | 3 |
Когда я функции оформляю в отдельный .cpp файл, то эти функции не видит функция main. Как меня сделать так, чтобы функция main видела эти функции но они находились в в разных файлах?
0
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
||||||
10.01.2013, 23:13 [ТС] | 5 | |||||
Я понял! Просто нужно было написать вот так
0
|
10.01.2013, 23:14 | 6 |
объявить эти функции в мейне или его заголовке, а реализовать в отдельном срр файле.
Среда разработки сама всё соберёт Добавлено через 19 секунд НЕТ! тебе написали не так. Самое частое заблуждение начинающих - они думают, что при раздельной компиляции cpp файлы должны всё друг о друге знать и включаться друг в друга.
0
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|
10.01.2013, 23:15 [ТС] | 8 |
Я просто не знал как подключить .cpp файл в программу, думал что он сам подключится)
Добавлено через 34 секунды А каким тогда образом?
0
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|
10.01.2013, 23:19 [ТС] | 10 |
Можете это как-то аргументировать? Так как я начинающий мне интересно, почему?
0
|
Don't worry, be happy
|
|
10.01.2013, 23:23 | 11 |
Какая у Вас IDE и компилятор?
На студии при небольшой модернизации все компилируется без проблем Добавлено через 2 минуты Соседняя тема: Вызов функции из другого файла
0
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
|
10.01.2013, 23:26 [ТС] | 12 |
Компилятор Dev C++. И теперь тупой вопрос, что такое IDE?)
0
|
Don't worry, be happy
|
|
10.01.2013, 23:29 | 13 |
Как раз Dev C++ - это не компилятор, а IDE
Интегрированная среда разработки А компилятор там, наверное, MinGW(GCC)
1
|
10.01.2013, 23:47 | 14 |
Потому что существует такое понятие "раздельная компиляция". Компилятор может генерировать из СРР файла промежуточный код, совершенно не волнуясь, что в коде недостаточно некоторых переменных и функций.
Непосредственным выполнением директивы #include (грубо говоря копипастингом одного файла в другой) занимается не компилятор, а препроцессор, да. Но если попытаться использовать эту директиву, окажется, что в проекте продублированы некоторые функции. После работы препроцессора компилятор должен скомпилировать каждый срр файл по отдельности. При этом, в срр файле могут использоваться внешние переменные и функции из других файлов. Компилятору их нужно только их declaration, т.е объявление без тела, чтобы просто сгенерировать вызов с аргументами в правильном порядке или выдать ошибку о синтаксически неправильном вызове функции. Таким образом, компилятор генерирует промежуточный файл, в котором все функции грамотно вызываются по своему адресу, а вот по какому именно адресу позже разберётся не компилятор, а линкер. При этом одно из достоинств раздельной компиляции то, что при добавлении в проект нового кода(или изменении какого-то срр-файла) остальные файлы не требуется перекомпилировать. К тому же, в программу помимо скомпилированных cpp файлов могут быть включены сторонние библиотеки функций. (файлы с расширением .lib) Все эти куски кода собираются линкером в один exe файл. Он и разбирает, куда ведёт вызов какой функции, и если ты неправильно их объявил или забыл объявить, то выдаёт "Linker error". При этом синтаксис программы был абсолютно грамотный, поэтому компилятор их спокойно прожевал и отдал линкеру.
1
|
25 / 25 / 11
Регистрация: 09.11.2012
Сообщений: 229
|
||||||
10.01.2013, 23:56 [ТС] | 15 | |||||
А можно сделать два заголовочних файлы, это будет лучше чем подключать .cpp?
0
|
10.01.2013, 23:56 | |
Помогаю со студенческими работами здесь
15
Как разделить программу на функции Помогите разделить программу по блокам Как разделить программу на функции Как разделить программу на функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |