Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
СИ++(лекции).doc
Скачиваний:
23
Добавлен:
27.03.2015
Размер:
551.42 Кб
Скачать

Глава 2. Создание консольных приложений в среде VisualStudio

1. Создание проекта

Для создания любой программы надо загрузить среду и выполнить команду меню File, New, Project. Далее в окнеNew Project(рис.2) выбираем язык (Visual C++), тип проекта (Win32) и шаблон проекта (Win32 Console Application). В полеNameследует ввести имя проекта, в полеLocationвыбрать папку для проекта. Автоматически при создании проекта будет создана папка с именем, совпажающим с именем проекта.

Frame5

Рис.2 Выбор типа проекта в VisualStudio

В VisualStudioкаждый проект входит в группу проектов, называемуюSolution(решение). По умолчанию имя решения совпадает с именем вновь создаваемого проекта, оно видно в неактивном полеSolution Name. Файл решения будет размещен в папке проекта. Если установить флажекCreate directory for solution, то полеSolution Nameбудет дступно для редактирования, и в нем можно будет ввести нужное имя решения, а для решения будет создана отдельная папка, в которую будет вложена папка для проекта.

Когда создаются несколько взаимосвязанных проектов, то удобно объединять их в решения. При создании простых учебных программ можно ограничиваться решениями, создаваемыми по умолчанию для каждого проекта, поэтому флажок Create directory for solutionне устанавливаем.

После нажатия кнопки OKоткроется окно мастера создания приложения (рис.3), на котором можно нажать кнопкуFinishдля завершения создания приложения илиNextдля уточнения настроек приложения.

Рис.3. Первый диалог мастера создания приложения

Второй диалог мастера, выводимый при нажатии Next, показан на рис. 4. Здесь можно изменить тип приложения, выбрав для переключателяApplication typeзначениеWindows application(оконное приложение),DLL(DynamicLinkedLibrary – динамически связываемая библиотека) илиStatic library(статическая библиотека).

Если установить флажок Empty project(пустой проект), то не будет создана заготовка главной функцииmain. Если же данный флажок не установлен, то в проект включается файл исходного кода с именем, совпадающим с именем проекта, который будет содержать заготовку функцииmain.

Frame9

Рис.4. Второй диалог мастера создания приложения

Флажки Add common header files for:(Добавить общие заголовочные файлы для:) обеспечивают включение в программу заголовочных файлов одной из библиотек, предоставляемыхVisualC++:

ATL – встраивает в проект поддержку классов из библиотекиActiveTemplate Library (ATL – библиотека активных шаблонов). Доступно только для консольных приложений.

MFC – встраивает в проект поддержку библиотеки Microsoft Foundation Class (MFC – основныы классы Майкрософт). Доступно только для консольных приложений и статических библиотек.

2. Начальный состав проекта

После нажатия кнопки Finish(рис.4) завершится создание проекта и будет открыта среда разработки (рис. 5). На рис. 5 видно окно программного кода с текстом файла,. My_first_program.cpp, содержащего главную функцию программы (листинг 1), обозначенную здесь как_tmain.

Листинг 1. Заготовка главной функции программы

// My_first_program.cpp : Defines the entry point for the console

// application.

#include "stdafx.h"

int _tmain(int argc, _TCHAR* argv[])

{

return 0;

}

Рис.5. Среда разработки VisualStudio

Функция _tmain является обычной функцией main, предусмотренной стандартом языка. На рис. 5 имеется окноSolution Explorer(Исследователь решения) показывающего состав решения. Видно, что решениеMy_first_programсодержит один проект с тем же названием. Проект содержит три раздела:

Header Files(заголовочные файлы);

Resource Files(файлы ресурсов);

Source Files(исходные файлы).

Кроме этого автоматически создается текстовый файл ReadMe.txt, содержащий краткое описание состава созданного проекта.

В листинге 2 приведен текст файла stdafx.h, в который добавлен перевод комментариев.

Листинг 2. Файл stdafx.h

// stdafx.h : include file for standard system include files,

// or project specific include files that are used frequently, but

// are changed infrequently

// Включаемый файл для стандартных системных включаемых файлов

// или специфичных для проекта включаемых файлов, которые используются часто,

// но изменяются нечасто

#pragma once

#define WIN32_LEAN_AND_MEAN // Exclude rarely-used stuff from Windows headers

// Исключает редко используемые материалы из заголовков Windows

#include <stdio.h>

#include <tchar.h>

// TODO: reference additional headers your program requires here

// TODO: сошлитесь здесь на дополнительные заголовки,

// требуемые вашей программе

Директива препроцессора #pragma once обеспечивает однократное включение файла, используется вVisualStudioвместо традиционного стража включения.

В файл включаются заголовочный файл библиотеки ввода и вывода языка Cstdio.hи файлtchar.h, содержащий определения используемых макросов и типов данных. Другие необходимые в программе системные заголовочные файлы удобно включать вstdafx.h, чтобы выполнялась их предварительную компиляцию, благодаря чему повтрная компиляция выполняется быстрее.

В листинге 3 приведен текст файла stdafx.cpp, с переведенными комментариями.

Листинг 3. Файл stdafx.cpp

// stdafx.cpp : source file that includes just the standard includes

// stdafx.cpp : исходный файл, который включает только стандартные включения

// My_fist_program.pch will be the pre-compiled header

// My_fist_program.pch будет предварительно откомпилированным заголовком

// stdafx.obj will contain the pre-compiled type information

// stdafx.obj будет содержать предварительно откомпилированную информацию

// о типах

#include "stdafx.h"

// TODO: reference any additional headers you need in STDAFX.H

// and not in this file

// TODO: ссылайтесь на любые нужные вам заголовки в STDAFX.H

// но не в этом файле

Как следует из комментариев, в файлstdafx.cpp не следует вносить каких-либо дополнений.