Студопедия КАТЕГОРИИ: АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
First.ехе - 0 error(s), 0 warning(s)
Теперь запустите программу командой Build > Execute first.exe. В окне виден текст сообщения Welcome to C++ и подсказка Press any key to continue,вставленная Visual C++. Если нажать любую клавишу, окно исчезнет с экрана. На примере этой маленькой программы мы познакомились с проектами и рабочими областями Visual C++, с компиляцией программ и с редактированием текстов. Теперь можно заняться собственно программированием на С++. C++ считается объектно-ориентированным языком; сейчас мы выясним, что составляет главную суть этого понятия. Классы и объекты C++ Объекты и классы — две фундаментальные концепции всех объектно-ориентированных языков (типа C++). Поскольку эти концепции достаточно важны, мы потратим несколько минут на знакомство с ними, что избавит нас от затрат времени и недоразумений в будущем. Из-за шумихи, поднятой в последнее время, объектно-ориентированное программирование (ООП) может показаться таинственным и неприступным, но это совсем не так. На самом деле ООП было придумано для того, чтобы упростить написание длинных программ. Наш мини-обзор объектно-ориентированного программирования начнется с объектов. Что такое объект? В длинных и сложных программах переменные и функции могут исчисляться сотнями. Это заметно усложняет создание и сопровождение таких программ, поскольку вам приходится помнить обо всем этом. Наличие переменных с одинаковыми именами в различных функциях может привести к нежелательным конфликтам. Объектно-ориентированное программирование как раз и было изобретено для того, чтобы большие программы можно было разделять на отдельные части. В концепции объектов нет ничего сложного. Программа просто делится на фрагменты, каждый из которых предназначен для решения отдельной задачи; эти фрагменты и называются объектами. Например, весь код для экранного вывода можно выделить в объект с именем screen(экран). Объекты обладают большими возможностями, чем простые функции и переменные, поскольку в них могут содержаться как функции, так и переменные, что облегчает работу с ними. Наш объект screen может содержать не только все данные, отображаемые на экране, но и функции для работы с этими данными, например drawString() (для вывода строк) или drawLine() (для рисования линий). Это означает, что вся работа с экраном изолируется от остальной части программы, что упрощает работу программиста. Другой пример - представьте себе холодильник. Вряд ли вам захотелось бы постоянно вручную регулировать температуру и управлять работой его насосов. Если же сделать эти функции внутренними и выполняемыми автоматически, холодильник превращается в полезный и удобный объект. Подобноеслияние кода с данными в объектах закладывает основу для всего объектно-ориентированного программирования. Что такое класс? Как создать объект? На помощь приходят классы. Класс для объекта — пример вроде, что форма для печенья; другими словами, класс можно рассматривать шаблон или "форму" для изготовления объектов. В программировании подобная связь существует между типом данных (например, целочисленным) и переменной. Например, в следующем примере создается целая переменная с именем the_data: int the_data; Именно так создаются целочисленные переменные в C++. Здесь int — тип переменной, a the_data — имя самой переменной. Аналогичная связь существует между классом и объектом. Приближенно класс можно рассматривать как тип. ПОДСКАЗКА Как мы вскоре убедимся, C++ поддерживает все стандартные типы данных, принятые в программировании — int/ double/ long/ float и т. д. Например, если заранее подготовить класс screenclass, можно создать объект этого класса с именем screen: screenclass screen; Важно помнить о том, что все рабочие данные хранятся в объекте. Класс не содержит никаких данных; он лишь описывает общую структуру и поведение объекта. По своей сути объектно-ориентированное программирование — это всего лишь способ группировки функций и данных, облегчающий работу над программой. Мы познакомимся с другими аспектами объектно-ориентированного программирования и научимся создавать классы, создавать объекты классов и обращаться к функциям и данным объектов. На этом краткий обзор классов и объектов завершается. Подведу итог: класс представляет собой программную конструкцию для объединения (или инкапсуляции) функций и данных. Объект можно рассматривать как переменную, тип которой совпадает с данным классом -- подобно тому, как объект screen принадлежал классу screenclass. В комплект Visual C++ входит целая библиотека заранее написанных классов — Microsoft Foundation Classes (MFC), которая заметно облегчает работу программиста. На ее основе можно создавать объекты для работы с кнопками, текстовыми полями, полосами прокрутки и т. д.Фирма Microsoft уже поработала за нас, и позднее мы воспользуемся этим. А теперь давайте рассмотрим пример программы, в которой используются классы и объекты. Наша первая программа на C++ с классами и объектами В следующем примере мы создадим класс DataClass и объект этого класса DataObject. Ни класс, ни объект не будут обладать особо впечатляющими возможностями, но зато пример поможет вам разобраться в том, как работают классы и объекты. Создайте в Visual C++ новый проект с именем classesтак, как это было сделано в предыдущем примере. Затем включите в него новый файл с именемclasses.cpp. После этого можно добавить код; как и раньше, начнем со включения файла iostream.h: #include <iostream.h> После этого объявим новый класс DataClass: #include <iostream.h> class DataClass { } Новые классы объявляются с ключевым словом class. Оставшаяся часть объявления класса заключается в фигурные скобки { и }. Почти во всех объектах C++ хранятся определенные данные; такая возможность будет предусмотрена и в классе DataClass. Для хранения данных используются переменные класса. Например, в класс можно включить переменную типа int (то есть создать целую переменную класса) с именемPrivateDataMember: #include <iostream.h> class DataClass { private: int PrivateDataMember; } Новая переменная класса имеет целый тип и, соответственно, может хранить целочисленные значения. Обратите внимание на ключевое слово private— оно означает, что переменная класса является закрытой, и с ней могут работать только объекты нашего класса DataClass. Ключевое слово private называется модификатором доступа. ПОДСКАЗКА: Если опустить модификатор доступа в объявлении класса, по |умолчанию используется модификатор private. |
||
Последнее изменение этой страницы: 2018-04-12; просмотров: 407. stydopedya.ru не претендует на авторское право материалов, которые вылажены, но предоставляет бесплатный доступ к ним. В случае нарушения авторского права или персональных данных напишите сюда... |