Как начать писать программу в visual studio 2010
Аннотация: В лекции рассматривается инструментальная среда разработки приложений Microsoft Visual Studio 2010 в режиме компилятора языка С. Приводится простейшая программа на языке С, которая иллюстрирует использование средств элементарного текстового вывода на консоль.
Теоретическая часть
Язык С (читается как Си ) в основе своей был создан в 1972 г. как язык для операционной системы UNIX [1.2]. Автором этого языка считается Денис М. Ритчи (DENNIS M. RITCHIE).
Популярность языка С обусловлена, прежде всего тем, что большинство операционных систем были написаны на языке С. Его начальное распространение было задержано из-за того, что не было удачных компиляторов.
Несколько лет не было единой политики в стандартизации языка С. В начале 1980-х г. в Американском национальном институте стандартов ( ANSI ) началась работа по стандартизации языка С. В 1989 г. работа комитета по языку С была ратифицирована, и в 1990 г. был издан первый официальный документ по стандарту языка С. Появился стандарт 1989, т.е. С89 [1.3].
К разработке стандарта по языку С была также привлечена Международная организация по стандартизации ( ISO ). Появился стандарт ISO /IEC 9899:1990, или ANSI C99 языка С [1.3].
В данном пособии за основу принимается стандарт языка С от 1989 г. и написание программ будет выполняться в среде разработки Visual Studio 2010.
Язык С является прежде всего языком высокого уровня, но в нем заложены возможности, которые позволяют программисту (пользователю) работать непосредственно с аппаратными средствами компьютера и общаться с ним на достаточно низком уровне [1.3]. Многие операции , выполняемые на языке С, сродни языку Ассемблера. Поэтому язык С часто называют языком среднего уровня.
Для написания программ в практических разделах данного учебного пособия будет использоваться компилятор языка С++, а программирование будет вестись в среде Microsoft Visual Studio 2010. Предполагается, что на компьютере установлена эта интегрированная среда.
Microsoft Visual Studio 2010 доступна в следующих вариантах:
- Express – бесплатная среда разработки, включающая только базовый набор возможностей и библиотек.
- Professional – поставка, ориентированная на профессиональное создание программного обеспечения, и командную разработку, при которой созданием программы одновременно занимаются несколько человек.
- Premium – издание, включающее дополнительные инструменты для работы с исходным кодом программ и создания баз данных.
- Ultimate – наиболее полное издание Visual Studio, включающие все доступные инструменты для написания, тестирования, отладки и анализа программ, а также дополнительные инструменты для работы с базами данных и проектирования архитектуры ПО.
Отличительной особенностью среды Microsoft Visual Studio 2010 является то, что она поддерживает работу с несколькими языками программирования и программными платформами. Поэтому, перед тем, как начать создание программы на языке С, необходимо выполнить несколько подготовительных шагов по созданию проекта и выбора и настройки компилятора языка С для трансляции исходного кода
После запуска Microsoft Visual Studio 2010 появляется следующая стартовая страница, которая показана на рис. 1.1.
Следующим шагом является создание нового проекта. Для этого в меню File необходимо выбрать New – Project (или комбинацию клавиш Ctrl + Shift + N ). Результат выбора пунктов меню для создания нового проекта показан на рис. 1.2.
Среда Visual Studio отобразит окно New Project, в котором необходимо выбрать тип создаваемого проекта. Проект ( project ) используется в Visual Studio для логической группировки нескольких файлов, содержащих исходный код, на одном из поддерживаемых языков программирования, а также любых вспомогательных файлов. Обычно после сборки проекта (которая включает компиляцию всех входящих в проект файлов исходного кода) создается один исполняемый модуль .
Обычно программист C++ начинает с создания приложения "Hello, world!", которое запускается из командной строки. Именно его вы и создадите в Visual Studio на этом шаге.
Предварительные требования
- Установите и запустите на своем компьютере Visual Studio с рабочей нагрузкой "Разработка классических приложений на C++". Если установка еще не выполнена, см. статью Установка поддержки C++ в Visual Studio.
Создание проекта приложения
Visual Studio использует проекты, чтобы упорядочить код для приложения, и решения, чтобы упорядочить проекты. Проект содержит все параметры, конфигурации и правила, используемые для сборки приложения. Он управляет связью между всеми файлами проекта и любыми внешними файлами. Чтобы создать приложение, сначала создайте проект и решение.
В Visual Studio откройте меню "Файл" и выберите команду "Создать > Project", чтобы открыть диалоговое окно "Создание нового Project". Выберите шаблон Консольное приложение с тегами C++ , Windows и Консоль, а затем нажмите кнопку Далее.
В диалоговом окне Настроить новый проект в поле Имя проекта введите HelloWorld. Выберите Создать, чтобы создать проект.
Visual Studio создаст проект. Вы можете приступать к добавлению и изменению исходного кода. По умолчанию шаблон консольного приложения добавляет исходный код приложения Hello World:
Когда код в редакторе будет выглядеть таким образом, вы можете перейти к следующему шагу и начать разработку приложения.
В Visual Studio откройте меню "Файл" и выберите команду "Создать > Project", чтобы открыть диалоговое окно "Создать Project".
Visual Studio создаст пустой проект. Вы можете приступать к его настройке в соответствии с типом создаваемого приложения и добавлению файлов исходного кода. Поэтому вы сделаете это сейчас.
Настройка проекта как консольного приложения
Visual Studio позволяет создавать приложения и компоненты самых разных типов как для Windows, так и для других платформ. Шаблон Пустой проект не определяет тип создаваемого приложения. Консольное приложение — это приложение, которое выполняется в консоли или в окне командной строки. Чтобы создать его, необходимо сообщить Visual Studio, что приложение будет использовать подсистему консоли.
Теперь Visual Studio знает, что создаваемый проект предназначен для выполнения в окне консоли. Далее вы добавите файл с исходным кодом и введете код приложения.
Добавление файла исходного кода
В обозревателе решений выберите проект HelloWorld. В меню Проект выберите команду Добавить новый элемент, чтобы открыть диалоговое окно Добавление нового элемента.
Visual Studio создаст пустой файл исходного кода и откроет его в окне редактора, где в него можно ввести код.
Добавление кода в файл исходного кода
Скопируйте код в окне редактора с файлом HelloWorld.cpp.
Код в окне редактора должен выглядеть следующим образом:
Когда код в редакторе будет выглядеть таким образом, вы можете перейти к следующему шагу и начать разработку приложения.
Следующие шаги
Руководство по устранению неполадок
Здесь приведены решения распространенных проблем, которые могут возникнуть при создании первого проекта C++.
Создание проекта приложения: проблемы
В диалоговом окне Новый проект должен быть шаблон Консольное приложение с тегами C++ , Windows и Консоль. Если его нет, возможны две причины. Он может быть отфильтрован из списка или не установлен. Сначала проверьте раскрывающиеся списки фильтров в верхней части списка шаблонов. Выберите фильтры C++ , Windows и Консоль. Должен появиться шаблон консольного приложения C++. Если этого не произошло, значит, рабочая нагрузка Разработка классических приложений на C++ не установлена.
Чтобы установить рабочую нагрузку Разработка классических приложений на C++ , можно запустить установщик прямо из диалогового окна Новый проект. Чтобы запустить установщик, щелкните ссылку Установка других средств и компонентов внизу списка шаблонов. Если в диалоговом окне Контроль учетных записей пользователей запрашиваются разрешения, выберите Да. В установщике должна быть выбрана рабочая нагрузка Разработка классических приложений на C++ . Выберите Изменить, чтобы обновить установку Visual Studio.
Если проект с таким именем уже существует, выберите другое имя для проекта. Можно также удалить существующий проект и повторить попытку. Чтобы удалить существующий проект, удалите папку решения (содержащую файл helloworld.sln) в проводнике.
Если проект с таким именем уже существует, выберите другое имя для проекта. Можно также удалить существующий проект и повторить попытку. Чтобы удалить существующий проект, удалите папку решения (содержащую файл helloworld.sln) в проводнике.
Настройка проекта как консольного приложения: проблемы
Раскрывающийся список не открывается в поле свойства Подсистема, пока не будет выбрано свойство. Щелкните поле ввода, чтобы выбрать его. Можно также последовательно переходить по элементам управления в диалоговом окне с помощью клавиши TAB, пока не будет выделено поле Подсистема. Щелкните раскрывающийся список или нажмите клавиши ALT+стрелка вниз, чтобы открыть его.
Добавление файла исходного кода: проблемы
Файлу исходного кода можно спокойно присвоить другое имя. Однако не добавляйте в проект несколько файлов с одинаковым кодом.
Если вы добавили в проект файл неправильного типа, например файл заголовка, удалите его и повторите попытку. Чтобы удалить файл, выберите его в обозревателе решений. Затем нажмите клавишу DELETE.
Добавление кода в файл исходного кода: проблемы
Если вы случайно закрыли окно редактора с файлом исходного кода, его можно легко открыть снова. Чтобы сделать это, дважды щелкните файл HelloWorld.cpp в окне обозревателя решений.
Если в редакторе исходного кода какие-либо элементы подчеркнуты красной волнистой линией, проверьте, соответствуют ли их написание, пунктуация и регистр символов используемым в примере. В коде на C++ регистр имеет важное значение.
В этом пошаговом руководстве показано, как создать традиционное классическое приложение Windows в Visual Studio. В примере приложения, которое вы создадите, используется API Windows для отображения "Hello, Windows desktop!" в окне. Код, созданный в этом пошаговом руководстве, можно использовать в качестве шаблона для создания других классических приложений Windows.
Для краткости некоторые операторы кода опущены в тексте. В разделе "Сборка кода" в конце этого документа показан полный код.
Предварительные требования
Компьютер под управлением Microsoft Windows 7 или более поздних версий. Мы рекомендуем Windows 10 или более поздней версии для оптимальной разработки.
Копия Visual Studio. Сведения о скачивании и установке Visual Studio см. в этой статье. Когда вы запускаете установщик, убедитесь, что установлена рабочая нагрузка Разработка классических приложений на C++ . Не беспокойтесь, если вы не установили эту рабочую нагрузку при установке Visual Studio. Вы можете снова запустить установщик и установить ее сейчас.
Базовые значения об использовании интегрированной среды разработки Visual Studio. Если вы уже использовали классические приложения для Windows, вы, вероятно, справитесь. Общие сведения см. в обзоре возможностей интегрированной среды разработки Visual Studio.
Основные навыки владения языком C++. Не волнуйтесь, мы не будем делать ничего сложного.
Создание классического проекта Windows
Выполните следующие действия, чтобы создать свой первый Windows классический проект. По мере использования вы введете код для рабочего Windows классического приложения. Чтобы ознакомиться с документацией по предпочтительной версии Visual Studio, используйте селектор Версия. Он находится в верхней части оглавления на этой странице.
Создание классического проекта Windows в Visual Studio
В главном меню выберите Файл >Создать >Проект, чтобы открыть диалоговое окно Создание проекта.
В верхней части диалогового окна задайте языкC++, задайте для платформызначение Windows и задайте для Project тип "Рабочий стол".
В отфильтрованный список типов проектов выберите Windows мастер рабочего стола и нажмите кнопку "Далее". На следующей странице введите имя проекта, например DesktopApp.
В Обозреватель решений щелкните правой кнопкой мыши проект DesktopApp, выберите "Добавить" и выберите "Создать элемент".
В диалоговом окне Добавление нового элемента выберите Файл C++ (.cpp). В поле "Имя" введите имя файла, например HelloWindowsDesktop.cpp. Выберите Добавить.
Теперь проект создан, и исходный файл откроется в редакторе. Чтобы продолжить, перейдите к созданию кода.
Создание классического проекта Windows в Visual Studio 2017 г.
В меню Файл выберите команду Создать, а затем пункт Проект.
В диалоговом окне "Создать Project" в области слева разверните узел InstalledVisual>C++, а затем выберите Windows Desktop. В средней области выберите мастер Windows рабочего стола.
В Обозреватель решений щелкните правой кнопкой мыши проект DesktopApp, выберите "Добавить" и выберите "Создать элемент".
В диалоговом окне Добавление нового элемента выберите Файл C++ (.cpp). В поле "Имя" введите имя файла, например HelloWindowsDesktop.cpp. Выберите Добавить.
Теперь проект создан, и исходный файл откроется в редакторе. Чтобы продолжить, перейдите к созданию кода.
Создание классического проекта Windows в Visual Studio 2015 г.
В меню Файл выберите команду Создать, а затем пункт Проект.
В диалоговом окне "Создать Project" в области слева разверните узел InstalledTemplatesVisual> >C++, а затем выберите Win32. В средней области выберите шаблон Проект Win32.
На странице "Обзор " мастера приложений Win32 нажмите кнопку "Далее".
На странице "Приложение Параметры" в разделе "Тип приложения" выберите Windows приложение. В разделе "Дополнительные параметры" снимите флажок предварительно скомпилированного заголовка, а затем выберите " Пустой проект". Чтобы создать проект, нажмите кнопку Готово.
В Обозреватель решений щелкните правой кнопкой мыши проект DesktopApp, выберите "Добавить" и выберите "Создать элемент".
В диалоговом окне Добавление нового элемента выберите Файл C++ (.cpp). В поле "Имя" введите имя файла, например HelloWindowsDesktop.cpp. Выберите Добавить.
Теперь проект создан, и исходный файл откроется в редакторе.
Создание кода
Далее вы узнаете, как создать код для классического приложения Windows в Visual Studio.
Запуск классического приложения Windows
Так же, как каждое приложение C и приложение C++ должны иметь функцию в качестве отправной main точки, каждое Windows классическое приложение должно иметь WinMain функцию. WinMain имеет следующий синтаксис:
Сведения о параметрах и возвращаемых значениях этой функции см. в разделе "Точка входа WinMain".
Что такое все эти дополнительные слова, такие как WINAPI , или CALLBACK , или, или HINSTANCE , или _In_ ? Традиционный API Windows использует методы typedefs и макросы препроцессора для абстрагирования некоторых подробностей типов и кода для конкретной платформы, таких как соглашения о вызовах, __declspec объявления и прагмы компилятора. В Visual Studio можно использовать функцию быстрой информации IntelliSense, чтобы узнать, что определяют эти определения типов и макросов. Наведите указатель мыши на интересующее слово или нажмите клавиши CTRLK, CTRLI++ для небольшого всплывающего окна, содержащего определение. Дополнительные сведения см. в разделе Using IntelliSense. Параметры и типы возвращаемых значений часто используют заметки SAL для перехвата ошибок программирования. Дополнительные сведения см. в статье "Использование заметок SAL для уменьшения дефектов кода C/C++".
Windows требуются классические программы. TCHAR определяет макрос, который разрешается в конечном счете wchar_t , если символ ЮНИКОД определен в проекте, в противном случае он разрешается в char . Если вы всегда создаете сборку с поддержкой ЮНИКОДа, вам не требуется TCHAR и может использоваться напрямую wchar_t .
Наряду с функцией WinMain каждый Windows классическое приложение также должно иметь функцию window-procedure. Обычно эта функция называется WndProc , но ее можно присвоить любое имя. WndProc имеет следующий синтаксис:
Дополнительные сведения см. в разделе Процедуры окна.
Добавление функциональных возможностей в функцию WinMain
WinMain В функции вы заполняете структуру типа WNDCLASSEX. Структура содержит сведения о окне: значок приложения, цвет фона окна, имя, отображаемое в заголовке строки, помимо прочего. Важно отметить, что он содержит указатель функции на процедуру окна. В приведенном ниже примере показана типичная структура WNDCLASSEX .
Сведения о полях приведенной выше структуры см. в разделе WNDCLASSEX.
Теперь можно создать окно. Используйте функцию CreateWindowEx .
Эта функция возвращает HWND дескриптор окна. Дескриптор немного похож на указатель, который Windows используется для отслеживания открытых окон. Дополнительные сведения см. в разделе Типы данных Windows.
На этом этапе окно было создано, но нам все равно нужно сообщить Windows, чтобы сделать его видимым. Вот что делает этот код:
На этом этапе функция WinMain должна напоминать приведенный ниже код.
Добавление функциональных возможностей в функцию WndProc
HDC в коде — это дескриптор контекста устройства, который используется для рисования в клиентской области окна. Используйте функции для EndPaint подготовки BeginPaint и завершения рисования в клиентской области. BeginPaint возвращает дескриптор контексту устройства отображения, используемому для рисования в клиентской области; EndPaint завершает запрос на рисование и освобождает контекст устройства.
Сборка кода
Как и было обещано, ниже приведен полный код для рабочего приложения.
Сборка примера
Удалите любой код, введенный в HelloWindowsDesktop.cpp в редакторе. Скопируйте этот пример кода и вставьте его в HelloWindowsDesktop.cpp:
В меню Построение выберите Построить решение. Результаты компиляции должны отображаться в окне вывода в Visual Studio.
Чтобы запустить приложение, нажмите клавишу F5. Окно, содержащее текст "Hello, Windows desktop!", должно появиться в левом верхнем углу экрана.
Поздравляем! Вы выполнили это пошаговое руководство и создали традиционное классическое приложение Windows.
И так, входим в среду программирования Microsoft Visual Studio 2010. Создаем проект через пункт меню "File" -> "New Project"*:
Теперь нам надо выбрать тип создаваемого приложения (Windows form application)*:
Что же мы теперь видим? Для новичка это что то страшное и ужасное. Для тех, кто уже программировал на Delphi или Visaul Basic увидит до боли знакомую палитру компонентов*:
Но и новичкам не стоит пугаться. Давайте для начала раскроем вкладку "Common Controls", ткнем мышкой в кнопочку "Button" и той же мышкой ткнем по форме (там где у нас заголовок Form1). В месте тыка должна появиться кнопочка Button*:
«Button» («кнопка») - это компонент (component) «Button» («кнопка»). Так же можно положить на форму другие компоенты, например «ListBox» (Визуальный список), «TextBox» (поле редактирования текста).
Попробую простыми словами объяснить, что такое компонент. Сперва скажу, что компонент – это такой объект, который можно положить на форму. А теперь объясню, что же такое объект и чем он отличается от компонента.
Вспомним школьный курс зоологии. Как классифицируется живой мир? Сначала вводиться понятие «царство»
• Царство одноклеточных,
• Царство растения
• Царство животные.
Возьмем животных. Их можно разделить по типам. Например:
• Тип кишечнополостные.
• Тип плоские черви.
• Тип моллюски.
• Тип хордовые.
Последние делятся на млекопитающих, пресмыкающихся, земноводных, птиц и т. д. Можно еще дальше углубиться в классификацию, но сейчас мы это делать не будем, а перейдем непосредственно к программированию.
- Стоп стоп! – скажете Вы, - а зачем классифицировать эти объекты?
Представить себе, что Вы, подобно некому демиургу (творцу, богу), создаете жизнь на Земле. Сперва Вы разработали простейшие органические соединения. Так, ради эксперимента, что же получиться. Затем объединили их в сложные молекулы, из которых, как из кирпичиков, собрали простейшие микроорганизмы. Но Ваша конечная цель – создание разумной жизни. Поэтому вы не остановились на достигнутом, А сотворили многоклеточные организмы. Затем стали улучшать их, развивать. Некоторые виды оказались жизнеспособные, некоторые вымерли (динозавры). И вот наконец цель достигнута – появился Homo Sapiens – человек разумный.
А теперь опустимся с небес на землю и представим программирование как творение, где вы свою программу заставляете эволюционировать до какого то определенного состояние, когда ее можно использовать, а затем и дальше, постепенно наращивая и улучшая функционал.
А теперь представим, что атом – это простейшая команда программы или единица информации (что друг от друга, согласитесь, не отделимы, ибо программа работает с чем – правильно, с информацией).
Тогда молекула – это подпрограмма. Или объект.
У разных птиц разный окрас перьев, форма клюва и крыльев. Так и у классов, при создании нового класса, унаследованные признаки можно менять. Это называется полиморфизм.
И так, кладем на форму еще и Label*:
Теперь щелкнем на положенную нами на форму кнопку. У на откроется окно редактирования кода, при этом будет еще и автоматически создан шаблон обработчика нажатия кнопочки (участка кода, который запускается, когда юзер мышкой жмет на кнопку)*:
Запустим программу, нажав на иконку с зеленым треугольничком:*
Наша программа скомпилируется и запустится:
Нажмем на Button1 и увидим надпись "Hello, world!":
Microsoft Visual Studio — это набор инструментов разработки, основанных на использовании компонентов и других технологий для создания мощных, производительных приложений.
Кроме того, среда Visual Studio оптимизирована для совместного проектирования, разработки и развертывания корпоративных решений.
Также Visual Studio позволяет создавать проекты, имеющие пользовательский интерфейс (GUI), работая с разными компонентами, такими как формы, кнопки, списки, меню и т.д.
В рамках данного курса мы будем рассматривать лишь программы, работающие в режиме DOS.
Рассмотрим версию Visual Studio 2010.
При загрузке приложения из меню Пуск/Программы/Microsoft Visual Studio 2010 появляется главное окно c начальной страницей программы, которое представлено на рис. 3.1.
Мы будет создавать программы, которые работают в консоли, т.е. взаимодействие с пользователем происходит посредством черного экрана. Данным курсом не предусмотрено создание интерфейсных приложений, т.е. с такими элементами, как кнопки, диалоговые окна, выпадающие списки и т.д.
Для создания программы необходимо нажать Файл/Создать/Проект или нажать на стартовой странице Visual Studio2010 быструю ссылку Создать проект, выделенную синим цветом. После выбора создания нового проекта появится другое диалоговое окно Создать проект, где необходимо выбрать требуемые опции, а именно: в левом столбце необходимо выбрать Visual C++/Win32, справа наверху – Консольное приложение Win32, справа внизу вписать имя проекта (например, proga1 ), в графе расположение выбрать вашу папку, где будут храниться все программы, оставить галочку Создать каталог для решения. Диалоговое окно Создать проект представлено на рис. 3.2.
После этого нужно нажать ОК. Откроется мастер настройки нашего будущего консольного приложения, который представлен на рис. 3.3.
Требуется нажать кнопку Готово. Тогда в главном окне Visual Studio 2010 закроется начальная страница, и откроется файл proga1.cpp (правое верхнее поле), окно вывода ошибок и предупреждений Вывод (правое нижнее поле), Командный обозреватель (левое вертикальное поле). Данный вид представлен на рис. 3.4.
Файл proga1.cpp предназначен для текста программы (или кода программы), здесь мы будем вписывать наши операторы, переменные и функции.
Вместо командного обозревателя можно включить Обозреватель решений, в котором видно все файлы и папки, созданные для нашего нового проекта. Для этого необходимо под Командным обозревателем нажать кнопку Обозреватель решений. Далее в появившемся списке раскрыть папки Файлы исходного кода и Заголовочные файлы. Окно Visual Studio с Обозревателем решений представлено на рис. 3.5.
Когда мы составляем программу в Visual Studio, получается целый проект, который автоматически создается средой Visual Studio. Задача начинающего программиста состоит в том, чтобы напечатать код своей программы в файле *.cpp и запустить программу на выполнение.
Рассмотрим заготовку кода, которую нам предлагает Visual Studio.
Первые две строчки начинаются двумя символами "//". Данные символы означают, что далее на этой строчке следует комментарий, он не воспринимается компилятором как код программы и не будет выдавать ошибку. Удалять эти две строчки не рекомендуется.
Далее начинается функция int main() . Автоматически Visual Studio называет ее _tmain и вписывает аргументы int argc, _TCHAR* argv[] . У нас будут самые простые программы для начинающих программистов, поэтому мы изменяем эту строчку и приводим ее к виду: int main() и оставляем return 0 , или void main() и стираем return 0 . После проведенной нами подготовки необходимо собрать проект, нажав в меню Построение/Построить решение. Тогда в поле Вывод начинается проверка нашего кода. Сейчас проверка прошла успешно и проект построился. Окно Visual Studio после сборки проекта представлено на рис. 3.6.
Попробуем теперь запустить нашу пустую программу. Для этого на клавиатуре необходимо нажать Ctrl+F5 . Тогда появится консоль со стандартной надписью после выполнения программы "Для продолжения нажмите любую клавишу…". Консоль представлена на рис. 3.7.
После просмотра консоли закройте ее, нажав на крестик.
Теперь можно составить простейшую программу, которая напишет на экране фразу "PRIVET, STUDENT. " . В код нашей заготовки нужно добавить несколько строк:
Итак, итоговый код программы представлен на рис. 3.8.
Конечно, в процессе работы с приложением Visual Studio может возникнуть множество вопросов. В меню программы предусмотрена справка и стандартные примеры, которые можно посмотреть. Чтобы включить справку, необходимо нажать Справка/Просмотр справки или воспользоваться горячими клавишами Ctrl+F1 . Чтобы посмотреть примеры кодов, в меню нужно выбрать Справка/Примеры .
Читайте также: