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

Не работает программа из книги Дейтела "Как программировать на с++" - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Можно ли создать функцию, принимающую двумерный массив произвольного размера? http://www.cyberforum.ru/cpp-beginners/thread364659.html
Добрый вечер всем. Я прочитал в книге в главе Передача двумерных массивов в функцию следующую вещь: При передаче функции в качестве фактического параметра одномерного массива нет необходимости...
C++ С++ широкие символы Господа, здравствуйте! Дали мне в институте задание - написать консольное приложение, осуществляющее запись и чтение из txt файла. В ходе написания возникли проблемы с кирилицей, мне посоветовали... http://www.cyberforum.ru/cpp-beginners/thread364650.html
C++ Создание объекта с помощью метода getInstance()
Помогите написать тестовую программу: Создайте класс, из которого можно создать только один объект. • Создание объекта должено проходить через getInstance() метод, • Повторный "вызов"...
C++ Целочисленный массив (SOS)
Дан целочисленный массив размера N. Вывести в начале все содержащиеся в данном массиве четные числа в порядке возрастания их индексов, а затем все нечетные числа в порядке убывания их индексов.
C++ Циклы(С) http://www.cyberforum.ru/cpp-beginners/thread364619.html
Здравствуйте,помогите мне пожалуйста с задачкой. В Одномерном массиве A(10) поменять местами элементы стоящие на чётных и нечётных местах, среди элементов расположенных до максимального.
C++ Для каждого числа в текстовом файле определить сумму его чисел В текстовом файле из 10 строк записаны построчно целые положительные числа. Для каждого числа определить сумму его цифр. Примечание: 1)имя текстового файла вводить с клавиатуры, 2)вывести на... подробнее

Показать сообщение отдельно
Нейкист
11 / 1 / 1
Регистрация: 04.08.2012
Сообщений: 8
04.08.2012, 18:09
Наверно зря я эту тему поднимаю, но мне лично гугленье сразу ответа не дало, пришлось думать самому. Вдруг кому пригодится? Сразу говорю, я решал задачу под линуксом, что надо сделать для компиляции под виндой не знаю.
Итак, что я понял из книги Дейтела и нескольких ссылок полученных от гугла.
Мы имеем три файла: собственно главный файл с функцией main(), файл с определением класса GradeBook - GradeBook.h и файл с реализацией функций класса GradeBook.cpp. Как я их только не пытался компилировать, ничего не выходило, пока не догадался посмотреть что там пишется у Дейтела после листинга программы. А там есть хорошая схемка которая показывает, что сначала создается объектный файл из GradeBook.cpp & GradeBook.h, это делается командой

$ g++ -c GradeBook.cpp

Так как GradeBook.cpp содержит
C++
1
#include "GradeBook.h"
мы получаем нужный объектный файл.
Затем создается объектный файл из main.cpp & GradeBook.h

$ g++ -c main.cpp

Он тоже содержит
C++
1
#include "GradeBook.h"
с интерфейсом класса и тоже получаем объектный файл.
Далее выполняем

$ g++ main.o GradeBook.o -o prog

и запускаем это

$ ./prog

Как я понимаю вся эта морока нужна для того, чтобы программист не отвлекался на реализацию функций класса(файл GradeBook.cpp после создания объектного файла вообще можно удалить), а имел перед глазами только интерфейс в файле GradeBook.h
Кстати додумался я не после картинки к сожалению, меня гугл прям носом ткнул в статью. Там в самом конце описывается создание Makefile, и все команды нужные там есть:
http://www.amse.ru/courses/cpp2/2010_10_11.html
P.S. За сумбур извините, литературный талант напрочь отсутствует.
P.P.S. Профи, если где жестко ошибся в рассуждениях пожалуйста, подскажите.
0
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru