Кент Рейсдорф. BORLAND C++BUILDER. Раздел 1
Кент Рейсдорф. BORLAND C++BUILDER. Страница 75
2. Измените программу из упражнения 1 так, чтобы вместо указателя использовать ссылку.
3. Перепишите программу REFERENC из листинга 3.2 так, чтобы структура mailingListRecord передавалась функции displayRecord() по ссылке, а не по значению.
4. Что неправильно в объявлении этой функции?
void SomeFunction(int paraml, int param2 = 0, int рагатЗ);
5. Объясните пятилетнему ребенку разницу между указателем и ссылкой.
Сегодня вам предстоит познакомиться с классами. Классы — это сердце Си++ и главная составляющая объектно-ориентированного программирования. Классы являются также основой библиотеки визуальных компонентов (VCL — Visual Component Library), которую вы будете использовать при написании GUI-приложений Windows. (VCL детально рассматривается на пятый день, «Библиотеки классов Си++ и модель визуальных компонентов».) Сначала вы узнаете, что такое класс и как его можно использовать. Попутно вы познакомитесь с такими понятиями Си++, как объект, наследование и абстрактное представление данных. В конце главы вас ожидает введение в файловый ввод-вывод в Си++.
Класс, как и структура, представляет собой набор данных и функций, предназначенных для совместного выполнения определенной задачи. Как говорят, класс инкапсулирует задачу. Классы имеют следующие характерные элементы:
? Средства контроля доступа
? Конструкторы
? Деструкторы
? Члены-данные
? Функции-члены
? Специальный скрытый указатель с именем this.
Перед тем, как погрузиться в изучение этих элементов, позвольте мне показать на небольшом примере, как работают классы. Давайте рассмотрим типичный управляющий элемент интерфейса Windows — например, флажок (check box). Класс, представляющий флажок, мог бы иметь члены-данные для хранения подписи к флажку и его состояния (установлен или не установлен). В этот класс должны также входить функции, с помощью которых вы будете устанавливать и запрашивать подпись к флажку и его состояние. Эти функции могут иметь имена GetCheck(), SetCheck(), GetCaption() и Set- Caption(). После того, как класс описан, вы можете создать экземпляр этого класса для управления флажком в Windows. Если у вас три флажка, вам потребуются три экземпляра класса CheckBox. С их помощью вы сможете управлять каждым флажком в отдельности. Вот пример текста программы: