![]() Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Семинар 14. Многофайловые проекты
Среда Visual C++ позволяет создавать и отлаживать программы, использующие не только стандартные, но и пользовательские библиотеки подпрограмм – модули. Модуль C++ обычно включает два файла: заголовочный файл с расширением «.h» и файл реализации с расширением «.cpp». Заголовочный файл играет роль интерфейсной секции модуля. В него помещают объявление экспортируемых ресурсов модуля: · прототипы (заголовки) функций, · объявление переменных, типов и констант. Заголовочный файл подключают командой #include ″ ИмяМодуля.h″, записываемой в файле реализации программы или другого модуля, если они используют ресурсы описываемого модуля. Файл реализации представляет собой секцию реализации модуля. Он должен содержать команды подключения используемых модулей, описания экспортируемых функций, а также объявление внутренних ресурсов модуля. Для создания файлов модуля и добавления их к проекту необходимо выполнить команду меню Проект/Добавить новый элемент. Пример 14.1.. Создать модуль, содержащий функцию f1. Проект содержит 3 файла: Содержимое файлов:
Дополнительные команды препроцессора в файле mod1.h позволяют исключить повторную компиляцию текста программы при многократном подключении заголовочного файла. Имя переменной препроцессора modh_20100810 – уникальный идентификатор, который точно не встречается в других библиотеках. Для получения этого имени в примере для mod1.h использована следующая схема: < ИМЯФАЙЛА> < РАСШИРЕНИЕ> _< ГОД> < МЕСЯЦ> < ДЕНЬ (создания)>.
Пример 14.2. Использование одной переменной в двух модулях Глобальная переменная b определяется в файле modul1.cpp. Чтобы ее можно было использовать в файле modul2.cpp, она объявлена в файле modul2.h как внешняя с помощью слова extern. Проект содержит следующие файлы: Содержимое файлов:
Обратите внимание, как к проекту добавляются стандартные модули. Все они включаются в файл stdafx.h, а затем уже этот модуль включается во все остальные. Директива pragma once обеспечивает включение данного файла в проект только один раз.
|