Курсовая работа: Проектирование и разработка классов средствами языка программирования С++Builder6/0

void getcomplex () // ввод полей с клавиатуры

{cout<<”\n Введите действительную часть"; cin>>а;

cout<<”\n Введите мнимую часть"; cin>>ib;

}

int get_a () {return a; }

int get_ib () {return ib; }

void show () const

{ cout<<a<<" + "<<ib<<"i"; } // вывод полей на экран

};

В этом классе два скрытых поля a и ib, получить значения которых из вне можно с помощью методов get_a () и get_ib ().

1.3 Описание объектов

Конкретные переменные типа "класс" называются экземплярами класса, или объектами. Время жизни и видимость объектов зависит от вида и места их описания и подчиняется общим правилам C++.

Complexz1; // объект класса Complex с параметрами по умолчанию

Complexz2 (12,14); // объект с явной инициализацией

Complexarray_of_complex [100] ; // массив объектов с параметрами по умолчанию

Complex*z = newComplex (10); // динамический объект

Complex &z3 = z1; // ссылка на объект

При создании каждого объекта выделяется память, достаточная для хранения всех его полей, и автоматически вызывается конструктор, выполняющий их инициализацию. Методы класса не тиражируются. При выходе объекта из области действия он уничтожается, при этом автоматически вызывается деструктор.

Доступ к элементам объекта аналогичен доступу к полям структуры. Для этого используется операция точка () при обращении к элементу через имя объекта и операция - > при обращении через указатель, например:

int n = z1. get_a ();

cout<<z->get_ib ();

Обратиться таким образом можно только к элементам со спецификатором public. Получить или изменит значения элементов со спецификатором private можно только через обращение к соответствующим методам.

Можно создать константный объект, значения полей которого изменять запрещается. К нему должны применяться только константные методы:

ClassComplex

{

intget_a () const {returna; }

};

К-во Просмотров: 411
Бесплатно скачать Курсовая работа: Проектирование и разработка классов средствами языка программирования С++Builder6/0