Добавление классов в проект в visual studio выполняется
Создавая класс, разработчик должен понимать, что он не создает код программы, а разрабатывает структуру и модель поведения какого-либо объекта, который ему будет необходим при дальнейшей разработки программы.
Создавая класс, мы оперируем абстрактными значениями (если мы создаем класс «человек», мы не создаем конкретную личность, а создаем шаблон который будет применим к любой личности.).
Для того, чтобы создать класс Visual Studio:
1. Нажимаем правой кнопкой мыши по проекту.
2. В появившемся меню выбираем пункт Добавить – Класс
3. В появившемся окне указываем имя класса, например, Point.cs.
Так как мы создаем класс Point (точку), то нам необходимо задать те свойства, которые присуще точке, это: координата по X и координата по Y (если говорить про двухмерное пространство).
public— означает, что свойство или метод общедоступно (также возможно значение private и protected, если данное слово опустить, то считается, что указан тип private)
int – говорит о том, что свойство является целым числом
Теперь для того, чтобы создать точку в своей программе, мы можем написать следующий код.
Данный код создает точку с именем р и координатой 10;5
Первая строчка данного примера (1) отвечает за создание переменной типа Point, путем вызова конструктора класса Point. В нашем классе на данный момент конструктор не создан, поэтому в строке (1) вызывается конструктор по умолчанию.
Конструктор по умолчанию присутствует в классе всегда, если в нем явно не указан хотя бы один конструктор.
Добавим свой конструктор в данный класс.
Создание конструктора ничем не отличается от создания функций, кроме 2-х исключений:
1. Конструктор- это функция, которая называется точно так же как и класс
2. У конструктора не указывается тип возвращаемого значения.
Так как мы работаем с классом точка, то для ее создания нам необходимо знать 2 координаты, значит наш конструктор, должен принимать 2 аргумента.
Теперь, для того, чтобы создать точку, мы можем написать следующий код
В нашем конструкторе «a» и «b» это аргументы и они доступны только в рамках той функции, аргументами, которой они являются. X и Y это свойства класса, поэтому мы можем использовать их в любой функции данного класса
Что произойдет, если аргументы нашего конструктора будут не «a» и «b», а «X» и «Y»?
Visual Studio напишет нам ошибку в строчках (1) и (2), связана она с тем, что внутри функции X и Y – это и аргументы функции и свойства класса. Мы должны явно показать, какие из этих переменных являются свойствами класса. Делается это путем приписывания к данной переменной ключевого слова this
Теперь Visual studio понимает какая переменная за что отвечает.
Стоит так же отметить, что в рамках класса, значения свойств хранятся в памяти на протяжении всего времени жизни экземпляра класса. Значения же аргументов функций и переменных функций удаляются из памяти после завершения данной функции.
Создадим еще один класс Line (Линия)
Для этого повторим шаги 1-3, описанные выше при создании класса Point.
Что такое Линия? Линия- это набор из 2-х точек. Точка же–это 2-е координаты. Таким образом по сути линия-это 4 координаты.
Подумайте, чем неудобна данная реализация?
В предыдущей части, мы реализовали класс Точка, тем самым мы создали новый тип данных, который можем использовать при необходимости. Тем самым нашу Линию можно реализовать следующим образом:
Для тренировки:
1.Напишите конструктор класса Line
2.Реализуйте класс прямоугольник и эллипс.
Сведения о применении диаграмм классов
Разработка: редактируйте код своего проекта путем редактирования схемы классов. Добавляйте новые и удаляйте ненужные элементы. Внесенные изменения будут отражены в коде.
Визуализация: лучше понимайте структуру своего проекта путем просмотра классов в проекте на схеме классов. Настраивайте схему таким образом, что было можно сосредоточиться на наиболее важных сведениях о проекте. Сохраняйте свою схему для использования ее в дальнейшем для демонстрации или в документации.
Рефакторинг: переопределяйте методы, переименовывайте идентификаторы, выполняйте рефакторинг параметров, реализуйте интерфейсы и абстрактные классы.
Просмотр типов и отношений
В диаграмме классов отображаются сведения о типах, например о составляющих их элементах и отношениях между ними. Визуализация этих сущностей является динамическим представлением кода. Это означает, что можно изменять типы в конструкторе, а затем просматривать эти правки в исходном коде сущности. Аналогичным образом диаграмма классов синхронизируется с изменениями, вносимыми в файлы с кодом.
Если проект содержит диаграмму классов и в проекте есть ссылка на тип, который находится в другом проекте, диаграмма классов не отображает этот тип до сборки проекта для него. Аналогичным образом, диаграмма не отображает изменения кода внешней сущности, пока вы не перестроите проект с этой сущностью.
Процесс создания диаграммы классов
Диаграммы классов помогают понять структуру классов в проектах. Возможно, эти проекты были созданы другими разработчиками или необходимо просто обновить ваш собственный проект. Диаграммы классов можно использовать для настройки, совместного использования и предоставления сведений о проекте другим пользователям.
Первым шагом в предоставлении сведений о проекте является создание схемы классов, отображающей то, что вы хотите показать. Дополнительные сведения см. в разделе Добавление диаграммы классов. Можно создать несколько схем классов для проекта, которые можно использовать для отображения отдельного представления проекта, выбранного подмножества типов проекта или выбранного подмножества членов типов.
Кроме определения того, что именно показывает каждая диаграмма классов, также можно изменить способ представления данных. Дополнительные сведения см. в статье Практическое руководство. Настройка диаграмм классов.
После точной настройки одной или нескольких схем классов можно скопировать их в документы Microsoft Office и распечатать или экспортировать в виде графических файлов. Дополнительные сведения см. в разделе Практическое руководство. Копирование элементов диаграммы классов в документ Microsoft Office, Практическое руководство. Печать диаграмм классов и Практическое руководство. Экспорт диаграмм классов в виде изображений.
Конструктор классов не отслеживает расположение исходных файлов, поэтому, изменение структуры проекта или перемещение исходных файлов в проекте может привести к тому, что конструктор классов не будет отслеживать тип, особенно исходный тип для typedef, базовые классы или типы ассоциаций. Может возникнуть ошибка вида Конструктору классов не удалось отобразить этот тип. В этом случае перетащите измененный или перемещенный исходный код в схему классов и повторно отобразите ее.
После создания проекта вам потребуется изменить или добавить его функциональные возможности. Такие задачи включают в себя создание классов, добавление новых функций-членов и переменных, а также добавление методов и свойств автоматизации. Именно для этого предназначены мастеры кода.
Перечисленные ниже редко используемые мастеры удалены в Visual Studio 2019. Удаление этих мастеров не влияет на общую поддержку для ATL и MFC. Пример кода для этих технологий находится в архиве в документации Майкрософт и репозитории VCSamples на GitHub.
- Мастер компонентов ATL COM+ 1.0
- Мастер компонентов ATL ASP
- Мастер поставщика ATL OLE DB
- Мастер страницы свойств ATL
- Мастер потребителя ATL OLE DB
- Потребитель ODBC MFC
- Класс MFC из элемента управления ActiveX
- Класс MFC из TypeLib.
Доступ к мастерам кода C++
Обратиться к мастерам кода C++ можно в трех расположениях:
Команда Добавить новый элемент в меню Проект позволяет открыть диалоговое окно Add New Item , где можно добавить в проект новые файлы. Команда Добавить класс отображает диалоговое окно Добавление класса, которое открывает мастер для каждого из типов классов, доступных для добавления в проект. Для классов MFC используйте мастер классов MFC. Команда Добавить ресурс отображает диалоговое окно Добавление ресурса, где можно создать или выбрать ресурс для добавления в проект.
При выделении класса или интерфейса в проекте внутри представления классов меню Проекта также содержит следующие команды:
Реализовать интерфейс (только из класса элемента управления)
Добавить функцию
Добавить переменную
Добавить точку подключения (только класс ATL)
Добавить метод (только из интерфейса)
Добавить свойство (только из интерфейса)
Добавить событие (только из класса элемента управления)
Чтобы добавить новые или существующие файлы, папки, элементы, классы, ресурсы и веб-ссылки в проект, в обозревателе решений щелкните любую папку правой кнопкой мыши и выберите пункт Добавить.
Чтобы добавить функции, переменные, классы, свойства, методы, события, интерфейсы, точки подключения или другой код в проект, щелкните правой кнопкой мыши соответствующий узел в окне представления классов и выберите пункт Добавить.
Visual Studio не предоставляет мастер для добавления интерфейса в проект. Вы можете добавить интерфейс в проект ATL или добавить поддержку ATL в проект MFC, добавив простой объект с помощью мастера простых объектов ATL. Кроме того, можно открыть IDL-файл проекта и создать интерфейс, введя следующее:
— Добавление исходных файлов C++ (CPP, H, IDL, RC, SRF, DEF, RGS).
— Добавление файлов веб-разработки (HTML, ASP, CSS, XML).
— Добавление служебных файлов и файлов ресурсов (BMP, CUR, ICO, RCT, SQL, TXT).
В этой статье описано, как создать проект C++ в Visual Studio, добавить код, а затем выполнить сборку и запуск проекта. Проект в этом пошаговом руководстве представляет собой программу, которая отслеживает количество игроков в различных карточных играх.
В Visual Studio для организации работы служат проекты и решения. Решение может содержать несколько проектов, например библиотеку DLL и ссылающийся на нее исполняемый файл. Дополнительные сведения см. в статье Solutions and Projects (Решения и проекты).
Перед началом работы
Для выполнения данного пошагового руководства требуется Visual Studio 2017 или более поздней версии. Если вам нужна копия, вот краткое руководство: Установка поддержки С++ в Visual Studio. Если вы еще не сделали этого, выполните приведенные ниже шаги после установки в рамках руководства "Hello, World", чтобы убедиться в правильности установки и работы компонентов C++.
Полезно владеть основами языка C++ и понимать назначение компилятора, компоновщика и отладчика. В руководстве также предполагается, что вы знакомы с Windows и умеете использовать меню и диалоговые окна.
Создание проекта
Чтобы создать проект, сначала выберите шаблон типа проекта. Для каждого типа проекта среда Visual Studio задает параметры компилятора и — в зависимости от типа — создает начальный код, который позже можно изменить. Приведенные ниже инструкции немного отличаются в зависимости от используемой версии Visual Studio. Чтобы ознакомиться с документацией по предпочтительной версии Visual Studio, используйте селектор Версия. Он находится в верхней части оглавления на этой странице.
Создание проекта в Visual Studio
В главном меню выберите Файл >Создать >Проект, чтобы открыть диалоговое окно Создание проекта.
В верхней части диалогового окна задайте для параметра Язык значение C++, для параметра Платформа значение Windows, а для Типа проекта — Консоль.
В отфильтрованном списке типов проектов щелкните Консольное приложение, а затем нажмите кнопку Далее. На следующей странице введите имя проекта Игра.
Вы можете принять расположение по умолчанию в раскрывающемся списке Расположение, ввести другое расположение или нажать кнопку Обзор, чтобы перейти к каталогу, в котором требуется сохранить проект.
При создании проекта среда Visual Studio помещает его в решение. По умолчанию имя решения совпадает с именем проекта. Можно изменить имя в поле Имя решения, но для этого примера оставьте имя по умолчанию.
Visual Studio создает решение и файлы проекта и открывает редактор для созданного файла исходного кода Game.cpp.
Создание проекта в Visual Studio 2017
В строке меню выберите Файл>Создать>Проект.
В левой области диалогового она Новый проект разверните узел Установленные и выберите Visual C++ , если он еще не открыт.
В списке установленных шаблонов в центральной области выберите шаблон Консольное приложение Windows.
В поле Имя введите имя проекта. Для этого примера введите Game (Игра).
Вы можете принять расположение по умолчанию в раскрывающемся списке Расположение, ввести другое расположение или нажать кнопку Обзор, чтобы перейти к каталогу, в котором требуется сохранить проект.
При создании проекта среда Visual Studio помещает его в решение. По умолчанию имя решения совпадает с именем проекта. Можно изменить имя в поле Имя решения, но для этого примера оставьте имя по умолчанию.
Visual Studio создает решение и файлы проекта и открывает редактор для созданного файла исходного кода Game.cpp.
Создание проекта в Visual Studio 2015
В строке меню выберите Файл>Создать>Проект.
В левой области диалогового она Новый проект разверните узел Установленные и выберите Visual C++ , если он еще не открыт.
В списке установленных шаблонов в центральной области выберите шаблон Консольное приложение Win32.
В поле Имя введите имя проекта. Для этого примера введите Game (Игра).
Вы можете принять расположение по умолчанию в раскрывающемся списке Расположение, ввести другое расположение или нажать кнопку Обзор, чтобы перейти к каталогу, в котором требуется сохранить проект.
При создании проекта среда Visual Studio помещает его в решение. По умолчанию имя решения совпадает с именем проекта. Можно изменить имя в поле Имя решения, но для этого примера оставьте имя по умолчанию.
Visual Studio создает решение и файлы проекта и открывает редактор для созданного файла исходного кода Game.cpp.
Упорядочение файлов и проектов
Для организации проектов, файлов и других ресурсов в решении, а также для управления ими можно использовать обозреватель решений.
В этой части пошагового руководства описывается добавление класса в проект. При добавлении класса Visual Studio добавляет соответствующие H- и CPP-файлы. Результаты отображаются в обозревателе решений.
Добавление класса в проект
Если окно Обозреватель решений не отображается в Visual Studio, выберите в строке меню Вид>Обозреватель решений.
Выберите проект Game в обозревателе решений. В строке меню выберите Проект>Добавить класс.
Visual Studio создает файлы и добавляет их в проект. Вы можете просмотреть их в обозревателе решений. Файлы Cardgame.h и Cardgame.cpp открываются в редакторе.
Внесите в файл Cardgame.h следующие изменения.
После открывающей скобки определения класса добавьте два частных элемента данных.
Измените конструктор по умолчанию, созданный средой Visual Studio. После описателя доступа public: найдите строку, которая выглядит следующим образом:
Измените этот конструктор так, чтобы он принимал один параметр типа int с именем players.
После деструктора по умолчанию добавьте встроенное объявление функции-члена типа static int с именем GetParticipants, которая не принимает параметры и возвращает значение totalParticipants .
static int GetParticipants()
После изменения файл Cardgame.h должен содержать примерно такой код:
Перейдите на вкладку Cardgame.cpp в верхней части области редактирования, чтобы открыть этот файл для внесения изменений.
Удалите весь код в файле и замените его следующим кодом:
При вводе кода можно использовать автозавершение. Например, при вводе кода с клавиатуры можно ввести pl или tot и нажать клавиши Ctrl+Пробел. Функция автозавершения автоматически вводит players или totalParticipants .
Добавление тестового кода в функцию main
Добавьте в приложение код, тестирующий новые функции.
Добавление тестового кода в проект
В окне редактора Game.cpp замените существующий код следующим:
Этот код добавляет в исходный код функцию тестирования PlayGames и вызывает ее в main .
Сборка и запуск проекта приложения
Затем выполните сборку проекта и запустите приложение.
Построение и запуск проекта
В строке меню последовательно выберите Сборка>Собрать решение.
Выходные данные сборки выводятся в окне Вывод. Если сборка пройдет успешно, выходные данные должны выглядеть следующим образом:
В окне Вывод в зависимости от конфигурации сборки могут отображаться различные шаги, но если сборка проекта завершается успешно, то последняя строка выходных данных должна выглядеть так, как показано выше.
Если сборка завершилась неудачей, сравните свой код с образцами в предыдущих действиях.
Чтобы запустить проект, в строке меню выберите Отладка>Запуск без отладки. Появится консольное окно, а результат выполнения должен выглядеть примерно следующим образом:
Для закрытия консольного окна нажмите любую клавишу.
Вы успешно выполнили сборку проекта приложения и решения. Продолжайте выполнять пошаговое руководство, чтобы получить дополнительные сведения о сборке проектов кода C++ в Visual Studio.
Чтобы добавить класс в проект Visual Studio C++, в обозревателе решений щелкните правой кнопкой мыши проект, выберите Добавить, а затем Класс. Откроется диалоговое окно Добавление класса.
Если по соглашению об именовании нужно использовать существующее имя, можно просто изменить регистр одной или нескольких букв в имени, так как C++ учитывает регистр. Например, хотя вы не можете назвать класс CDocument , можно назвать его cdocument .
Содержание раздела
Класс какого типа вы хотите добавить?
В диалоговом окне Добавление класса при развертывании узла Visual C++ на левой панели отображаются несколько групп установленных шаблонов. К этим группам относятся CLR, ATL, MFC и C++. При выборе группы на средней панели отображается список доступных шаблонов в этой группе. Каждый шаблон содержит необходимые для класса файлы и исходный код.
Чтобы создать класс, выберите шаблон в средней области, введите имя класса в поле Имя и нажмите Добавить. Откроется мастер добавления классов, где можно указать параметры для класса.
Дополнительные сведения о создании классов MFC см. в разделе Класс MFC.
Дополнительные сведения о создании классов ATL см. в разделе Простой объект ATL.
Шаблон Добавление поддержки ATL в MFC не создает класс, а настраивает проект для использования библиотеки ATL. Дополнительные сведения см. в разделе Поддержка ATL в проекте MFC.
Чтобы создать класс C++, который не использует MFC, ATL или CLR, воспользуйтесь шаблоном Класс C++ в группе C++ установленных шаблонов. Дополнительные сведения см. в разделе Добавление универсального класса C++.
Доступны два типа классов C++ на основе форм. Первый — класс CFormView — создает класс MFC. Второй создает класс Windows Forms для среды CLR.
Диалоговое окно "Добавление класса"
В Visual Studio 2015 диалоговое окно Добавление класса содержит шаблоны, которые позволяют выполнить следующие действия.
Открыть соответствующий мастер создания кода, если он доступен. Дополнительные сведения см. в разделе Добавление функциональных возможностей с помощью мастеров кода.
Автоматически создать новый класс, добавив в проект соответствующие файлы и исходный код.
Перейти к диалоговому окну Добавление класса можно из меню Проект, обозревателя решений или представления классов.
В Visual Studio 2017 и более поздних версиях диалоговое окно Добавление класса — это диалоговое окно универсального класса C++. Дополнительные сведения см. в разделе Добавление универсального класса C++.
Диалоговое окно "Мастер классов"
Класс можно создать на основе установленных шаблонов в диалоговом окне Мастера классов. Чтобы использовать мастер классов, щелкните проект правой кнопкой мыши в обозревателе решений и выберите в контекстном меню пункт Мастер классов. При нажатии в диалоговом окне кнопки Добавить класс отображается раскрывающийся список для выбора шаблона.
Можно также использовать мастер классов для изменения или просмотра существующего класса.
Добавление шаблонов классов
Читайте также: