Глава 4
В этой главе...
Если вы читаете эту книгу по порядку, то вы уже должны были создать несколько
.NET-программ. В процессе их создания использовались многие инструментальные
средства разработки языка Visual C++. Закончив читать часть I книги, вы будете уметь пользоваться еще большим количеством возможностей окружения Visual C++. Основной темой этой главы являются решения и проекты.
Решения и проекты упрощают процесс создания программ благодаря объединению всех
необходимых исходных файлов и прочих сопутствующих элементов. Файл проекта содержит информацию обо всех исходных файлах, из которых состоит программа. Файлы проектов также упрощают добавление других исходных файлов к программе и позволяют контролировать различные параметры присоединения этих файлов к программе. Решение-— это просто один или несколько проектов,
Некоторые программы состоят из одного файла. Но большинство программ, в том числе и те, создание которых было описано в главах 2 и 3, имеют несколько большие размеры. Для их выполнения требуются различные файлы с исходными кодами, а также заголовочные файлы и библиотеки. Чтобы создать выполняемую версию программы, нужно откомпилировать все эти файлы, а затем связать их воедино.
Сделать это можно двумя способами. Первый— использовать инструмент командной
строки, называемый NMAKE, и построить формирующий файл (makefile). Второй (более удобный и элегантный)— использовать решения и проекты. Формирующий файл состоит из списка команд, с помощью которых создается приложение. Например, в этом списке могут быть команды, указывающие, что нужно откомпилировать подпрограмму foo, подпрограмму bar, затем связать их с библиотекой muck и т.д. Создание формирующих файлов сопряжено с многими трудностями. Нужно знать множество деталей о том, как файлы компилируются и связываются. Более того, нужно знать специальный язык создания формирующих файлов!
Однако большим преимуществом создания формирующих файлов является тот факт, что инструмент NMAKE определяет, какие файлы были изменены с момента последнего создания приложения. Поэтому при повторном построении приложения заново откомпилированы будут только эти измененные файлы. Иногда это очень экономит время.
Файлы проектов — это те же формирующие файлы, которые Visual С++ создает автоматически и позволяет управлять ими с помощью визуальных средств, без необходимости знания всех деталей работы компилятора.
Файлы проектов, как и формирующие файлы, предназначены для построения приложений. Однако есть несколько причин, по которым использование файлов проектов намного проще, чем формирующих файлов.
Первая— при использовании файлов проектов компилятор сам просматривает исходные файлы и определяет все зависимости. (Зависимости — это наборы файлов, изменение которых требует повторной компиляции проекта.)
Вторая причина— управление файлами проектов осуществляется визуальными средствами, что намного удобнее и проще. Кроме того, поскольку Visual C++ сам знает, как компилируются файлы C++, как они связываются и т.п., вам самим не нужно точно регламентировать этот процесс. Все. что от вас требуется. — просто добавлять исходные файлы к файлу проекта. Всю остальную работу сделает Visual C++. Удобно, не правда ли?
Кстати, вы уже могли сталкиваться с файлом проекта. Если вы пробовали самостоятельно воспроизвести примеры программ из предыдущих глав, мастер AddWizard создавал для ваших программ файл проекта, содержащий список всех исходных файлов.
Можно использовать окно Solution Explorer для решения разнообразных задач программирования. Например, в нем можно просмотреть список всех исходных файлов, из которых состоит проект, и открыть любой из них для редактирования. Там же можно контролировать все параметры, в соответствии с которыми выполняется построение приложения. Можно осуществлять саму компиляцию приложения. Более детально возможности этого окна описаны в разделе "Что может окно Solution Explorer".
В справочной системе Visual C++ слова solution (решение) и project (проект) часто используются вместе. Вообще говоря, эти два слова обозначают разные веши. Решение состоит из одного или более проектов. Наиболее часто все же одно решение содержит один проект.Вы сможете смело называть себя хакером, если научитесь создавать решения из нескольких проектов.
Поскольку решения и проекты, по сути, являются почти одним и тем же, мы будем употреблять их как взаимозаменяемые понятия, за исключением тех случаев, когда информация будет относиться только к одному из них.
Построение любой программы подразумевает создание файла проекта и решения. Файл проекта сообщает компилятору, какие исходные файлы нужно откомпилировать для построения приложения. Также в нем содержится информация для компилятора о том, какие библиотеки должны быть присоединены.
Создать новый проект очень просто. Для начала выберите команду File->New->Project
(Файл->Создать->Проект), чтобы открыть показанное на рис. 4.1 диалоговое окно New Project(Создание проекта). Это окно, в котором определяются параметры будущего проекта. Здесь нужно указать название проекта, а также каталог, в котором он будет сохранен. Здесь же выбирается тип создаваемого проекта и один из стандартных шаблонов.
Рис. 4.1. Использование окна New Project для создания нового проекта
Project Types (Тип проекта): в этом разделе определяется тип создаваемого проекта. В данной книге будет рассмотрен только тип Visual С++ Project. В зависимости от того, какой установочный пакет Visual C++ вы приобрели, список доступных типов проектов может существенно отличаться от показанного на рис. 4.1.
Templates (Шаблоны): здесь можно выбрать один из подвидов проектов Visual C++, основанный на выбранном в разделе Project Types типе. Проекты Visual C++ имеют более дюжины шаблонов. Некоторые из этих шаблонов в действительности являются мастерами, которые предоставляют множество возможностей для контроля над тем, какие именно свойства будут иметь созданные вами программы. С двумя из них вы будете часто сталкиваться в процессе чтения книги. Это шаблоны Win32 Project и Managed C++ Application. (Есть много других вариантов, например шаблоны для создания различных средств управления, библиотек и других хитрых штучек.)
Name (Название): в этом поле нужно указать название нового файла проекта. Для проекта обычно используется то же название, что и для создаваемого с его помощью приложения.
Location (Размещение): укажите в этом поле папку, где должен быть сохранен создаваемый проект. Можно щелкнуть на кнопке Browse (Обзор), чтобы найти существующую папку. Если указанной папки еще нет, Visual С++ создаст ее автоматически. Хорошей практикой является хранение всех исходных файлов, имеющих отношение к определенному проекту, в отдельной папке. Предположим, например, что вы создаете приложение, именуемое Jukebox9. и хотите сохранить его в папке МояРабота\Juкеbох9. Вначале щелкните на кнопке Browse, чтобы найти папку МояРабота, или сами укажите путь к ней в поле Location. Затем в поле Name в качестве названия проекта наберите Jukebox9. Visual C++ автоматически создаст папку Jukebox9 в папке МояРабота.
Add to Solution/Close Solution (Добавить к решению/Закрыть решение): как вы
помните, решение может состоять из одного или нескольких проектов. Поэтому
при создании нового проекта его можно либо добавить к открытому в данный момент решению (Add to Solution), либо закрыть текущее решение (Close Solution)
и создать новое для нового проекта.
После того как вы укажете всю необходимую информацию, щелкните на кнопке ОК. Затем для большинства типов проектов открывается мастер, позволяющий определить дополнительные параметры создаваемого проекта. Некоторые мастера, такие как Win32 Application Wizard, с которым вы встречались в главе 3, состоят из нескольких шагов. Другие, попроще, состоят из одного шага и позволяют лишь добавить какие-то файлы к вашему проекту.
Чтобы добавить новый файл, выполните ряд действий.
Рис. 4.2. Использование диалогового окна New File для создания нового исходного файла
К проекту будет добавлен пустой файл C++.
Чтобы добавить уже существующий файл, выполните следующее.
Принцип его работы тот же, что и у
всех диалоговых окон Windows,
предназначенных для открытия файлов.
Рис. 4.3. В окне Solution Explorer отображается список файлов, из которых состоит ваш проект (решение)
Окно Solution Explorer может быть использовано для решения множества текущих задач.
Ниже приведен список некоторых из них, к которым вы будете наиболее часто возвращаться в процессе разработки приложений.
Просмотр и редактирование файлов, из которых состоит проект. Дважды
щелкните на названии файла, чтобы открыть его в окне редактора кодов. Если этот
файл еще не имеет реального наполнения, Visual C++ спросит, хотите ли вы создать новый файл. Ответьте "Да", чтобы увидеть перед собой девственно чистое окно редактора кодов.
Добавление к проекту новых файлов. Щелкните правой кнопкой мыши на названии проекта и выберите команду Add->Add Existing Item (рис. 4.4). Эти действия эквивалентны выбору команды Project->Add Existing Item.
Рис. 4.4. Использование Solution Explorer для добавления
к проекту уже существующих файлов
Окно Solution Explorer отображает зависимости проекта в папках Header Files
(Заголовочные файлы) и Resourse Files (Файлы ресурсов), как показано на рис.4.5. Файлы ресурсов представляют собой отдельные ресурсы программы, такие как растровые отображения графических объектов и пиктограммы. Они являются такими же зависимостями, как заголовочные файлы.
Рис. 4.5. Отображение зависимостей
проекта в окне Solution Explorer
Решения и проекты являются важным аспектом Visual C++. Их использование необходимо для построения программ и для быстрого поиска и просмотра нужных исходных кодов.
При разработке приложений работа в окне Solution Explorer занимает наибольшее количество времени. После написания кодов, конечно.
Назад |
Начало урока |
Вверх |
Вперед
Содержание