Наша первая программа
Программы на Visual C++ как-то быстро и незаметно усложняются и увеличиваются в размерах. При изучении таких программных концепций C++, как классы и объекты, мы постараемся сохранить максимальную простоту.
Некоторые программисты даже не знают, что Visual C++ можно использовать и для создания консольных приложений. Именно этим мы сейчас и займемся. Такие программы работают в окнах, напоминающих окна сеансов DOS. Наш первый пример будет чрезвычайно простым: мы просто выведем на экран сообщение: "Welcome to C++", то есть "Добро пожаловать в C++!"1.
Посмотрим, как это делается. Запустите Visual C++ - на экране появится окно, изображенное на рис. 1.1.
Программы на Visual C++, которые мы будем писать в этой книге, как правило, будут иметь собственные окна, но только не в этом уроке. Здесь мы займемся созданием консольных программ Win32 - для них окно предоставляет Visual C++. Поскольку сейчас нас интересует только программирование на C++, этого вполне достаточно.
Рис. 1.1. Среда Visual C++
|
|
Рабочие области и проекты Visual C++
Наша первая программа будет называться first, и мы создадим ее как новый проект Visual C++. Программные задачи в Visual C++ оформляются в виде проектов; обычно для каждой отдельной программы создается свой проект. Проект (project) представляет собой набор файлов, которые совместно используются для создания одной программы.
Кроме того, сами проекты размещаются в рабочих областях (workspaces), причем одна рабочая область может содержать несколько проектов (активный проект задается в Visual C++ командой Project д Set Active Project). Все проекты, созданные нами, будут иметь собственные рабочие области, однако в этой книге нам почти не придется заниматься рабочими областями: Visual C++ автоматически создает их для каждого нового проекта, поэтому в первую очередь нас будут интересовать проекты, а не рабочие области. Все же необходимо помнить о том, что вы работаете в рабочей области Visual C++, а проект принадлежит ей.
Давайте создадим и запустим первый проект:
1. Выполните команду File - New в Visual C++; на экране появляется окно New (рис. 1.2).
2. Перейдите на вкладку Projects и выберите из списка строку Win32 Console Application.
3. Введите в текстовом поле Project name имя проекта first, а в поле Location укажите каталог для проекта. В наших примерах используется каталог C:\VCPP, поэтому в поле Location следует ввести строку C:\VCPP\FIRST1.
Рис. 1.2. Создание нового проекта в Visual C++
4. Нажмите кнопку OK в диалоговом окне New. На экране появляется новое диалоговое окно с именем Win32 Application.
5. Нажмите кнопку Finish - Visual C++ создаcт новую программу с именем first. В нее входят два важных файла: first.dsw определяет параметры новой рабочей области, а first.dsp - параметры нового проекта.
|
|
Чтобы продолжить работу над программой, над которой вы трудились раньше, воспользуйтесь командой Visual C++ File д Open Workspaces... и откройте файл рабочей области программы (с расширением.dsw).
Итак, мы создали новую рабочую область, а в ней - проект с именем first. Теперь нужно ввести исходный текст программы; нам нужно, чтобы программа выводила строку "Welcome to C++".
Создание файла с исходным текстом
Для текста программы нам понадобится новый файл first.cpp. Расширение.cpp присваивается файлам с текстами программ на C++.
Помимо файлов с исходными текстами в программах на C++ часто встречаются заголовочные файлы с расширением.h. Как мы увидим в следующем уроке, заголовочные файлы содержат объявления переменных и функций.
Давайте создадим файл first.cpp и включим его в проект:
1. Снова выполните команду File д New, только на этот раз перейдите на вкладку Files (рис. 1.3).
2. Выберите из списка строку C++ Source File и введите имя файла first.cpp в текстовом поле File namе.
3. Проследите, чтобы флажок Add to project был установлен (см. рис. 1.3). Нажмите кнопку OK.
4. Файл first.cpp создается и открывается в среде Visual C++, как показано на рис. 1.4.
Среда Visual C++ состоит из трех основных окон: слева расположено окно просмотра с корешками вкладок в нижней части (ClassView и FileView). Справа от него находится окно редактора, в котором происходит редактирование документов (в настоящий момент в нем открыт пустой файл first.cpp). Внизу расположено окно результатов со вкладками Build, Debug и Find in Files.
Рис. 1.3. Создание нового файла с исходным текстом программы в Visual C++
В окне просмотра выводится общая структура проекта, но ее конкретное представление зависит от выбранной вкладки - ClassView или FileView (о других вкладках мы поговорим позже). На вкладке ClassView показана иерархия классов C++ в рабочей области; вскоре мы узнаем, что такое классы. На вкладке FileView показана иерархия файлов в рабочей области (на рис. 1.4 она состоит из рабочей области, проекта и файла first.cpp).
В следующем уроке, когда мы начнем работать с полноценными программами на Visual C++, в окне просмотра появится еще одна вкладка - Resources. Такие объекты как меню, диалоговые окна и панели инструментов, в программировании для Windows являются ресурсами.
В окне редактирования отображаются открытые документы. Обычно в нем работает текстовый и другие редакторы, например, редактор меню или диалоговых окон.
Рис. 1.4. Новый файл, открытый в Visual C++
В окне результатов в нижней части рис. 1.4 выводится информация о ходе компиляции программ (так называется процесс их преобразования в двоичный код, с которым может работать компьютер). Кроме того, это окно используется для отладки и других целей, о которых будет рассказано далее.
Добавление кода на C++
Теперь мы добавим программный код в файл first.cpp, который в настоящий момент открыт в окне редактирования Visual C++. Чтобы создать свою первую программу на C++, введите следующий текст:
#include <iostream.h>
void main()
{ cout << "Welcome to C++ \n";
}
Так выглядит наша первая программа. В ней мы воспользовались стандартными средствами C++ для вывода текстовой строки, в нашем случае - "Welcome to C++".
Сначала мы включаем (#include) в программу файл iostream.h. Это позволит нам работать со стандартными средствами экранного вывода C++ (содержимое включенного файла просто вставляется в исходный текст программы).
Затем мы определяем функцию с именем main(). Эта функция вызывается при запуске программы. Другими словами, когда вы запускаете файл (например, first.exe), Windows ищет в нем функцию main() и выполняет содержащийся в ней код; поэтому мы и включили в нее тот код, который необходимо выполнить. Вскоре мы рассмотрим функцию main() более подробно.
В программах из всех остальных уроков этой книги функция main() не используется, ее место занимает функция WinMain().
|
|
Выяснив, с чего начинается выполнение программы, давайте рассмотрим то, что она делает - а именно отображение строки на экране при помощи средств ввода/вывода языка C++.
Что такое потоки C++?
Мы записываем данные в поток C++ с именем cout, для чего используется оператор cout
<< "Welcome to C++ \n"n";:
#include <iostream.hh>
void main()
{
cout << "Welcome to C++ \n";
}
Текст "Welcome to C++ \n" отправляется в выходной поток C++ и попадает прямо на экран. Потоки C++ можно рассматривать как каналы для пересылки данных в различные места; поток cout посылает текст на экран.
Символ \n в конце строки представляет собой служебный символ, который переводит курсор на следующую строку после вывода текста. Приведенная выше строка программы выводит сообщение на экране, посылая его в поток cout.
Мы не будем надолго останавливаться на специфике работы с cout, потому что в стандартных Windows-программах вывод текста происходит без участия потоков; мы воспользовались cout лишь для того, чтобы временно облегчить себе задачу. Сейчас он нужен только затем, чтобы мы могли увидеть результаты работы наших классов и объектов при запуске программы. Начиная со следующего урока поток cout нам уже никогда не понадобится.
Кроме потока cout в консольных программах также можно пользоваться потоком cin для получения символов с клавиатуры.
На этом наше знакомство с кодом программы first.cpp завершается. Набранная в Visual C++ программа изображена на рис. 1.5. Предварительная подготовка закончена, пора посмотреть, как работает наша программа.
Рис. 1.5. Добавление кода в программу Visual C++