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

Используются для получения непосредственного доступа извне к скрытым полям класса, то есть расширения интерфейса класса.

Return (выражение); | Команда break может находиться в любом месте программы, однако обычно break ставиться в теле операторов while или do... while. | Стандартные потоки ввода-вывода для базовых типов. | Объявление функции называют иногда прототипом функции. | Указатели позволяют эффективно работать с массивами | Управление доступом. Определение, синтаксис объявления и пример использования. | Имя метода совпадает с именем класса. | Поля перечисляются через запятую. Для каждого поля в скобках указывается инициализирующее значение, которое может быть выражением. | Выделение памяти для полей класса; | Конструктор по умолчанию. Определение, свойства, синтаксис объявления и пример использования. |


Читайте также:
  1. А что же я должен был делать, чтобы привить к Яго случайно, извне взятый образ?
  2. Адрес получения корреспонденции для гр. Виноградова В. В.
  3. Блокировка доступа к памяти
  4. Виды маркетинговой информации и источники ее получения
  5. Запрет доступа для анонимных пользователей.
  6. Защита информации. Защита доступа к компьютеру.
  7. Изменение кода доступа к памяти

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

Объявляются внутри класса со спецификатором friend и должны иметь в качестве параметра объект или ссылку на объект.

Например, class A {… friend f (A&, int);…}

Дружественная функция может быть обычной функцией или методом другого класса, определенного ранее.

На нее не распространяется действие спецификаторов доступа.

Одна функция может быть дружественной сразу нескольким классам.

Отметим, что использование дружественных функций нарушает принцип инкапсуляции и таким образом затрудняет отладку программы.

Хорошим стилем программирования считается объявление дружественных функций в классе непосредственно после его заголовка без предварения каким-либо спецификатором доступа.

class B;// объявили класс

Class A

{

public: void f1(B &);….

}

Class B

{

friend int f2 (B& k) {return ++k.a;}

friend void A::f1(B& k) {k.a=0;}

Int a;

}

# include <iostream.h>

Class Count

{

friend void setX (Count &, int);

public:

Count () {x=0;}

void print () const {cout<<x<<”\n”;}

private:

Int x;

};

void setX (Count &c, int val) {c.x=val;}

Main()

{

Count object;

cout<<”object.x после своего создания: ”;


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


<== предыдущая страница | следующая страница ==>
Свойства деструкторов| Object.print();

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