Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Друзья-функции и друзья-классы.

Множественное наследование | Наследование классов и производные классы | Опишите принцип организации ввода элементов массива с помощью компонента Edit. |


Программы на C++ широко используют классы. Говоря кратко, классы позволяют вашим программам группировать для определенного объекта его данные и методы (функции), которые оперируют этими данными, в одной переменной. Классы C++ являются основой объектно-ориентированного программирования. метка public, появляющаяся в определении класса, делает элементы класса доступными для всей программы.C++ позволяет друзьям определенного класса обращаться к частным элементам этого класса. Чтобы указать C++, что один класс является другом (friend) другого класса, вы просто помещаете ключевое слово friend и имя соответствующего класса-друга внутрь определения этого другого класса. Например, приведенный ниже класс book объявляет класс librarian своим другом. Поэтому объекты класса librarian могут напрямую обращаться к частным элементам класса book, используя оператор точку:

 

class book

 

{

public:

book (char *, char *, char *);

void show_book(void);

friend librarian;

private:

char title [64];

char author[64];

char catalog[64];

};

 

Если программа использует друзей для доступа к частным данным класса, вы можете ограничить количество функций-элементов класса-друга, который может обращаться к частным данным, используя дружественные функции. Для объявления функции-друга укажите ключевое слово friend, за которым следует полный прототип, как показано ниже:

 

public:

friend class_name::function_name(parameter types);

 

Только функции-элементы, указанные как друзья, могут напрямую обращаться к частным элементам класса, используя оператор точку.

 


Дата добавления: 2015-08-27; просмотров: 54 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Виртуальные метода и полиморфизм.| Инкапсуляция , полиморфизм и наследование

mybiblioteka.su - 2015-2024 год. (0.006 сек.)