
- •1 Атрибуты private, public, protected.
- •2 Виртуальные метода и полиморфизм.
- •7 Заголовочный файл
- •8 Инкапсуляция , полиморфизм и наследование
- •9 Консольное приложение.
- •10Конструктор и деструктор
- •12) Множественное наследование
- •14) Наследование классов и производные классы
- •15) Обработка исключений
- •16) Объект Button
- •17) Объект CheckBox.
- •18) Объект ListBox.
- •19) Объект RadioGroup.
- •20) Объект TextBox (или Edit).
- •21) Объекты, классы, экземпляры класса. Пример.
- •29. Понятие о техническом задании на разработку программы.
- •31) Преимущества объектно-ориентированного программирования.
- •Простые типы данных
- •41. Управляемые (.Net) и неуправляемые объекты
- •Управляемый код. Осознать разницу
1 Атрибуты private, public, protected.
сlass имя_производного_класса : [ атрибут ] имя_базового_класса
{тело_произв_класса} [список объектов];
множественное наследование – возможность для некоторого класса наследовать компоненты нескольких никак не связанных между собой базовых классов. В иерархии классов соглашение относительно доступности компонентов класса следующие:
private – Член класса может использоваться только функциями- членами данного класса и функциями- “друзьями” своего класса. В производном классе он недоступен.(Модификатор private является атрибутом доступа по умолчанию. Он закрывает поля от всех других классов, разрешая прямой доступ к ним (чтение и запись) только методам самого класса. Помните, все поля всегда доступны всем методам класса. Они являются для методов класса глобальной информацией, с которой работают все методы, извлекая из полей нужные им данные и изменяя их значения в ходе работы.)
protected – То же, что и private , но дополнительно член класса с данным атрибутом доступа может использоваться функциями- членами и функциями- “друзьями” классов, производных от данного
public – Член класса может использоваться любой функцией, которая является членом данного или производного класса, а также к public - членам возможен доступ извне через имя объекта.
Следует иметь в виду, что объявление friend не является атрибутом доступа и не наследуется.
2 Виртуальные метода и полиморфизм.
В С++ виртуальные функции позволяют использовать полиморфизм классов. Так как виртуальные функции могут использоваться только внутри классов, то иногда их называют виртуальными методами .
В C++ полиморфизм реализуется через виртуальные функции. Но прежде чем добавлять виртуальные функции к классам, мы рассмотрим динамическое связывание.
Полиморфизм представляет собой способность объекта изменять форму во время выполнения программы. В этом уроке рассмотрены шаги, которые вам необходимо выполнить для создания полиморфных объектов. Из урока 39 вы узнаете, как использовать исключительные ситуации в C++ для обеспечения надежности вашей программы.
Виртуальные функции нужны в C++ для поддержки полиморфизма . Полиморфизм позволяет использовать одинаковый синтаксис для разных классов
2. Виртуальные методы и полиморфизм. В общем случае полиморфизм представляет способность объекта изменять форму. Полиморфизм – возможность замещения метода объекта-родителя одноименными методами объекта-потомка. При работе с объектами довольно типичной является ситуация, когда сложный метод приходится создавать заново для каждого типа объекта, хотя различия в поведении объектов могут быть небольшими. В этом случае обычно создается общий сложный метод, а различия вносятся в сменные подчиненные методы. Реализация такого подхода осуществляется с помощью виртуальных подчиненных методов. С этой целью после заголовка каждого сменного метода требуется написать virtual. Заголовки виртуальных методов предка и потомка должны в точности совпадать, причем оба метода должны быть виртуальными. Полиморфизм в С++ реализуется не только через виртуальные методы, но и через механизм перегрузки: внутри класса допускается существование нескольких функций с одинаковым именем, но различающимися типами результатов и наборами формальных параметров.
3Вывод графического изображения на форму
Для вставки графического изображения необходимо добавить на форму компонент Image из палитры компонентов Additional. Вызвать окно редактирования рисунка Picture Editor. С помощью кнопки Load вызвать окно загрузки файла и выбрать картинку из любого файла.
4Вывод сообщения пользователю:
Используется оператор cout. пример:
#include <iostream.h>
void main(void)
{
cout << "Вывод сообщения";
}
В итоге после компиляции , когда мы запустим программу, на нашем экране появится надпись Вывод сообщения. Текст после cout << обязательно заключать в кавычки, иначе компиляция выдаст ошибку.
5. Вызов одной формы из другой.
Добавляем в проект форму Form2
В обработчике события нажатия кнопки пишем
Form2 f2=gcnew Form2();
f2->Show();
6. Друзья-функции и друзья-классы.
Программы на C++ широко используют классы. Говоря кратко, классы позволяют вашим программам группировать для определенного объекта его данные и методы (функции), которые оперируют этими данными, в одной переменной. Классы C++ являются основой объектно-ориентированного программирования. метка public, появляющаяся в определении класса, делает элементы класса доступными для всей программы. C++ позволяет друзьям определенного класса обращаться к частным элементам этого класса. Чтобы указать C++, что один класс является другом другого класса, вы просто помещаете ключевое слово friend и имя соответствующего класса-друга внутрь определения этого другого класса.
Если программа использует друзей для доступа к частным данным класса, вы можете ограничить количество функций-элементов класса-друга, который может обращаться к частным данным, используя дружественные функции. Для объявления функции-друга укажите ключевое слово friend, за которым следует полный прототип, как показано ниже:
public:
friend class_name::function_name(parameter types);
Только функции-элементы, указанные как друзья, могут напрямую обращаться к частным элементам класса, используя оператор точку.