С этого шага мы начнем рассматривать различные способы доступа к компонентам класса.
Как только объект класса определен, появляется возможность обращаться к его компонентам. На этом шаге мы рассмотрим доступ с помощью квалифицированных имен. Такое имя имеет следующий формат:
имя_объекта.имя_класса::имя_компонента .
Имя класса с операцией уточнения области действия "::" обычно может быть опущено, и чаще всего для доступа к данным конкретного объекта заданного класса (как и в случае структур) используется уточненное имя:
имя_объекта.имя_элемента .
При этом возможности те же, что и при работе с элементами структур. Например, можно явно присвоить значения элементам объектов класса complex1:
. . . . . complex1 X1, Х2, D; // Три объекта класса complex1. complex1 *point = &D; // Указатель на объект класса complex1. complex1 dim[8]; // Массив объектов класса complex1. complex1 &Name = X2; // Ссылка на объект класса complex1. . . . . . X1.real = dim[3].real = 1.24; X1.imag = 2.3; dim[3].imag = 0.0;
Уточненное имя принадлежащей классу (т.е. компонентной) функции
имя_объекта.о6ращание_к_компонентной_функции
обеспечивает вызов компонентной функции класса для обработки данных именно того объекта, имя которого использовано в уточненном имени. Например, можно таким образом определить значения компонентных данных для определенных на предыдущем шаге объектов класса complex1:
X1.define(); // Параметры выбираются по умолчанию: // real == 0.0, imag == 0.0. Х2.define(4.3,20.0); // Комплексное число 4.3 + i*20.0.
С помощью принадлежащей классу complex1 функции display() можно вывести на экран значения компонентных данных любого из объектов класса. Например, следующий вызов принадлежащей классу complex1 функции:
Х2.display();
real =4.3, imag = 20.0
На следующем шаге мы рассмотрим использование указателей для доступа к компонентам класса.