Инициализация элементов данных класса в программе С с использованием конструктора, который запускается для каждого объекта. Применение операции ссылки в языке С для взятия адреса объекта. Деструкция как освобождение заказанной памяти, закрытие файлов.
При создании объектов одной из наиболее широко используемых операций которую вы будете выполнять в ваших программах, является инициализация элементов данных объекта. Чтобы упростить процесс инициализации элементов данных класса, C использует специальную функцию, называемую конструктором, которая запускается для каждого создаваемого вами объекта. Конструктор представляет собой метод класса, который облегчает вашим программам инициализацию элементов данных класса. O Многие объекты могут распределять память для хранения информации; когда вы уничтожаете такой объект, C будет вызывать специальный деструктор, который может освобождать эту память, очищая ее после объекта.После того как класс определен и заданы объекты этого класса, как правило, возникает необходимость выполнения каких-либо действий по инициализации каждого из объектов. Под инициализацией в данном случае понимается выполнение некоторых начальных действий в программе, для того, чтобы объект мог успешно функционировать. Для некоторого класса конструктор - это функция, являющаяся его членом и имеющая имя, совпадающее с именем самого класса, а также не содержащая типа возвращаемого значения. Класс с именем file использует конструктор с именем file. Одним из важных свойств конструктора является его автоматический вызов при описании любого объекта какого-либо класса, использующего конструктор, что снимает с программиста задачу своевременного отслеживания инициализации вновь вводимых объектов.Операция ссылки "&" в базовом языке С использовалась для взятия адреса объекта (переменных, массивов, структур, функций и т.п.). В С расширены возможности операции ссылки. В этом примере переменная Next не является указателем на тип int, а носит название ссылки на объект типа int. Далее в программе она становится некоторым синонимом объекта Handle для использования этого объекта как единого целого. В общем случае можно определить ссылки и на более сложные объекты, например, структуры или объекты классов.Деструктор класса вызывается автоматически для каждого из объектов класса при потере его из области видимости в программе. Если объект класса определен глобально, например, перед функцией main(), деструктор для этого объекта будет вызван в самом конце программы. Деструктор автоматически запускается каждый раз, когда программа уничтожает объект. К настоящему моменту вы можете создавать и уничтожать объекты в процессе выполнения программы. Если вы определяете деструктор внутри своей программы, C будет автоматически вызывать деструктор для каждого объекта, когда программа завершается (т.е. когда объекты уничтожаются).Продолжим выполнение задания из примера предыдущей главы для объектов класса "Комплексные числа" в части программирования конструкторов и деструкторов: /*********************/ #include "iostream.h" // Для cin, cout см.последующие главы class Complex {float Re; // Действительная и float Im; // мнимая части числа public: Complex (); Complex (int, int ); // Функции арифметики void Put (); // Функция ввода void Complex::Put () // Вывод на экранКонструкторы и деструкторы представляют собой специальные функции класса, которые программа автоматически вызывает при создании или уничтожении объекта. Большинство программ используют конструктор для инициализации элементов данных класса. Как вы уже знаете, тип (например, char, float и int) определяет набор значений, которые может хранить переменная, и набор операций, которые ваши программы могут выполнять над этой переменной. Когда вы определяете класс, вы по существу определяете тип. До изучения урока 24 убедитесь, что освоили следующие основные концепции: Конструктор представляет собой специальную функцию, которую ваша программа автоматически вызывает каждый раз при создании объекта.
План
Содержание
Введение
1. Конструкторы классов
2. Операция ссылки
3. Деструкторы классов
4. Пример программы с конструкторами и деструкторами
Заключение
Список литературы
Введение
При создании объектов одной из наиболее широко используемых операций которую вы будете выполнять в ваших программах, является инициализация элементов данных объекта. Единственным способом, с помощью которого вы можете обратиться к частным элементам данных, является использование функций класса. Чтобы упростить процесс инициализации элементов данных класса, C использует специальную функцию, называемую конструктором, которая запускается для каждого создаваемого вами объекта. Подобным образом C обеспечивает функцию, называемую деструктором, которая запускается при уничтожении объекта.
Конструктор представляет собой метод класса, который облегчает вашим программам инициализацию элементов данных класса.
O Конструктор имеет такое же имя, как и класс.
O Конструктор не имеет возвращаемого значения.
O Каждый раз, когда ваша программа создает переменную класса, C вызывает конструктор класса, если конструктор существует.
O Многие объекты могут распределять память для хранения информации; когда вы уничтожаете такой объект, C будет вызывать специальный деструктор, который может освобождать эту память, очищая ее после объекта.
O Деструктор имеет такое же имя, как и класс, за исключением того, что вы должны предварять его имя символом тильды (~).
O Деструктор не имеет возвращаемого значения.
Конструктор можно представить как функцию, которая помогает вам строить (конструировать) объект. Подобно этому, деструктор представляет собой функцию, которая помогает вам уничтожать объект. Деструктор обычно используется, если при уничтожении объекта нужно освободить память, которую занимал объект.
Вывод
Конструкторы и деструкторы представляют собой специальные функции класса, которые программа автоматически вызывает при создании или уничтожении объекта. Большинство программ используют конструктор для инициализации элементов данных класса. Простые программы, создаваемые сейчас вами, вероятно, не потребуют использования деструктора. Другими словами, вы можете переопределить символ плюс таким образом, что он будет добавлять содержимое одной строки к другой. Как вы уже знаете, тип (например, char, float и int) определяет набор значений, которые может хранить переменная, и набор операций, которые ваши программы могут выполнять над этой переменной. Когда вы определяете класс, вы по существу определяете тип. C позволяет вам указать, как ведут себя операторы с данным типом. До изучения урока 24 убедитесь, что освоили следующие основные концепции: Конструктор представляет собой специальную функцию, которую ваша программа автоматически вызывает каждый раз при создании объекта. Конструктор имеет такое же имя, как и класс объекта.
Конструктор не имеет возвращаемого значения, но вы не указываете ему тип void. Вместо этого вы просто не указываете возвращаемое значение вообще.
Когда ваша программа создает объект, она может передать параметры конструктору во время объявления объекта.
C позволяет вам перегружать конструкторы и разрешает использовать значения по умолчанию для параметров.
Деструктор представляет собой специальную функцию, которую ваша программа вызывает автоматически каждый раз при уничтожении объекта. Деструктор имеет такое же имя, как и класс объекта, но его имя предваряется символом тильды (~).
Список литературы
1. Джарод Холингвэрт, Дэн Баттерфилд, Боб Сворт, Джэйми Оллсоп C Builder 5. Руководство разработчика.
2. Borland C Builder 5. Энциклопедия программиста. Калверт Ч., Рейсдорф К., "ДИАСОФТ" - 2001, 944 стр.
3.
4. В.В. Подбельский. Язык C : Учебное пособие. - Москва: Финансы и статистика, 1995. 560с.
5. Ирэ Пол. Объектно-ориентированное программирование с использованием C : Пер. с англ. - Киев: НИИПФ ДИАСОФТ Лтд, 1995. 480с.
6. Т. Фейсон. Объектно-ориентированное программирование на Borland C 4.5: Пер. с англ. - Киев: Диалектика, 1996. 544с.
Размещено на
Вы можете ЗАГРУЗИТЬ и ПОВЫСИТЬ уникальность своей работы