ВВЕДЕНИЕ. Кафедра численных методов и программирования

МЕХАНИКО-МАТЕМАТИЧЕСКИЙ ФАКУЛЬТЕТ

Кафедра численных методов и программирования

 

И. Н. Блинов, В. С. Романчик

 

 

ОБЪЕКТНО-ОРИЕНТИРОВАННОЕ

ПРОГРАММИРОВАНИЕ НА С++

 

Учебно-методическое пособие

по курсу «МЕТОДЫ ПРОГРАММИРОВАНИЯ»

Для студентов механико-математического факультета

 

МИНСК

БГУ

 

УДК 681.142.2(072)

ББК 32.973.26-018.1я73

Б69

 

 

Р е ц е н з е н т ы

кандидат физико-математических наук, доцент И.М.Галкин;

кандидат физико-математических наук, доцент C.В.Суздаль.

 

 

Рекомендовано Ученым советом механико-математического факультета

29 марта 2005 г., протокол № 5

Блинов И. Н., Романчик В. С.

Объектно-ориентированное программирование на С++

В пособии рассматриваются вопросы, относящиеся к использованию технологии объектно-ориентированного программирования на языке C++. Описание методологии построения и использования классов сопровождается многочисленными примерами. Предназначено для студентов 2-го курса механико-математического факультета, изучающих курс «Методы программирования».

 

УДК 681.142.2(072)

ББК 32.973.26-018.1я73

 

 

ã Блинов И.Н., Романчик В.С., 2005

ã БГУ, 2005

: учебно-методич. Пособие по курсу «Методы программирования» для студ. механико-математич. фак./ И.Н.Блинов, В.С.Романчик.-Мн.:БГУ, 2005.-57с.

 

 

ВВЕДЕНИЕ

Язык С++ был спроектирован и разработан в фирме Bell Laboratories (США) в 1983 г. как расширение языка С. Оператор инкрементирования “++” в действительности означает переносимость С-программ в среду С++. Разработчик языка Б.Страуструп кроме языка C называет еще один источник С++ ­– язык Simula67. Из него позаимствовано понятие “класса”, соответствующего введенному пользователем типу, для которого обеспечиваются набор данных и операции над данными. Классы обеспечивают сокрытие данных, инициализацию данных, неявное преобразование типов, механизмы перегрузки операций. В настоящее время классы рассматриваются как реализация парадигмы объектно-ориентированного программирования (ООП), представляющей собой технологию построения программ в виде множества взаимодействующих объектов. Структура и поведение этих объектов описана иерархическими классами – абстрактными типами данных с открытым интерфейсом и скрытой внутренней реализацией. В классах реализованы такие базовые принципы ООП как:

1) абстракция данных;

2) наследование – в производных классах могут быть наследованы члены базового класса;

3) инкапсуляция – в классах объединяются данные и методы (функции) для работы с этими данными, и только через методы возможен доступ к сокрытым данным класса;

4) полиморфизм – возможность использования одних и тех же методов при работе с различными объектами базового и порожденных классов.

Существует несколько реализаций системы, поддерживающих стандарт С++, из которых можно выделить реализации Visual C++ (Microsoft) и Builder C++ (Inprise). Отличия относятся в основном к используемым библиотекам классов и средам разработки. В действительности в С++ программах можно использовать библиотеки языка С, библиотеки классов С++, библиотеки визуальных классов VCL (Builder C++), библиотеку MFC (Visual C++ и Builder C++)

Язык С++ является родоначальником множества объектно-ориентированных языков, таких как Java, C#, PHP и др.

Данное пособие предназначено для начинающих изучение технологии ООП на основе С++.