ВУЗ:
Составители:
Рубрика:
14
Синтаксис указателя
имя класса * имя объекта
синтаксис обращения к членам класса
(* имя объекта).член класса;
3. Способы передачи объекта в функции
Объект для программирования полностью наследует способы передачи парамет-
ров функции от процедурного программирования. Всего способов передачи три:
3.1. По назначению:
1.
Создается копия, передавшая параметры внутри функции;
2.
Внутри функции идет работа с копией (копия области памяти);
3.
При выходе из функции копия разрушается, т.е. все изменения, которые были
сделаны в копии, пропадают.
void func(int x); - прототип
func(x); - вызов
3.2. По адресу:
1.
Копия параметра внутри функции не создается;
2.
Работа внутри функции с оригиналом параметра;
3.
Все изменения, которые происходят внутри функции, сохраняются при выходе
из нее.
void func(int*x);
func(&x);
3.3. По ссылке:
При передаче параметра по ссылке, технология передачи параметра аналогично пе-
редачи по адресу, но при этом используется ссылочный тип.
void func(int&x);
func(x);
4. Передача параметров в функцию применительно к объектам
При передаче объекта в функцию по значению требуется создать копию
объекта, а при
выходе из такой функции требуется разрушить копию.
Создание копии:
1.
Копию создает конструктор копии, если он есть в классе;
2.
Если конструктора копии нет в классе, то копия создается компилятором.
Разрушение копии:
1.
Разрушает копию деструктор, если он описан в классе;
2.
Если нет деструктора в классе, то компилятор моделирует деструктор.
Объектно-ориентированное программирование обеспечивает возможность мно-
гократного использования программного кода. Если нужен класс объектов, очень по-
хожих на существование, но с несколько отличными свойствами, можно построить но-
вый класс из уже существующего. В С++ исходный класс называется базовым (base
class), а тот, который
создается из него – производным (derived class).
Каждый объект производного класса может одновременно считаться объектом
соответствующего базового класса. Например, паровоз остается вагоном, секундомер –
часами.
Производные классы обладают очень полезным свойством: все, что уже работа-
ет в базовом классе, будет автоматически наследоваться (inherited) производным клас-
сом.
14
Синтаксис указателя
имя класса * имя объекта
синтаксис обращения к членам класса
(* имя объекта).член класса;
3. Способы передачи объекта в функции
Объект для программирования полностью наследует способы передачи парамет-
ров функции от процедурного программирования. Всего способов передачи три:
3.1. По назначению:
1. Создается копия, передавшая параметры внутри функции;
2. Внутри функции идет работа с копией (копия области памяти);
3. При выходе из функции копия разрушается, т.е. все изменения, которые были
сделаны в копии, пропадают.
void func(int x); - прототип
func(x); - вызов
3.2. По адресу:
1. Копия параметра внутри функции не создается;
2. Работа внутри функции с оригиналом параметра;
3. Все изменения, которые происходят внутри функции, сохраняются при выходе
из нее.
void func(int*x);
func(&x);
3.3. По ссылке:
При передаче параметра по ссылке, технология передачи параметра аналогично пе-
редачи по адресу, но при этом используется ссылочный тип.
void func(int&x);
func(x);
4. Передача параметров в функцию применительно к объектам
При передаче объекта в функцию по значению требуется создать копию объекта, а при
выходе из такой функции требуется разрушить копию.
Создание копии:
1. Копию создает конструктор копии, если он есть в классе;
2. Если конструктора копии нет в классе, то копия создается компилятором.
Разрушение копии:
1. Разрушает копию деструктор, если он описан в классе;
2. Если нет деструктора в классе, то компилятор моделирует деструктор.
Объектно-ориентированное программирование обеспечивает возможность мно-
гократного использования программного кода. Если нужен класс объектов, очень по-
хожих на существование, но с несколько отличными свойствами, можно построить но-
вый класс из уже существующего. В С++ исходный класс называется базовым (base
class), а тот, который создается из него – производным (derived class).
Каждый объект производного класса может одновременно считаться объектом
соответствующего базового класса. Например, паровоз остается вагоном, секундомер –
часами.
Производные классы обладают очень полезным свойством: все, что уже работа-
ет в базовом классе, будет автоматически наследоваться (inherited) производным клас-
сом.
Страницы
- « первая
- ‹ предыдущая
- …
- 12
- 13
- 14
- 15
- 16
- …
- следующая ›
- последняя »
