Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
PPO.docx
Скачиваний:
13
Добавлен:
18.04.2015
Размер:
608.92 Кб
Скачать

Передача параметра по адресу

Если необходимо именно изменить переменную из внешней, по отношению к вызываемой функции, области видимости, можно копировать адрес переменной, подлежащей изменению. Соответственно при вызове функции g(&x) приходится использовать операцию взятия адреса. Эта техническая деталь отвлекает внимание программиста от логики прикладной программы, однако в случаях невозможности передачи по ссылке может оказаться единственным решением.

Можно заметить, что передача параметра по адресу является частным случаем передачи по значению: передаваемым значением является адрес, по которому можно найти другое значение — значение переменной x.

Передача параметра по ссылке

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

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

6. Макросы-относительные ссылки

Мáкрос (от греч. μακρός - большой, долгий;) — программный объект, который во время вычисления заменяется на новый объект, создаваемый определением макроса на основе его аргументов, затем выражается обычным образом.

Ссылки в Excel

Формулы, реализующие вычисления в таблицах, для адресации ячеек используют так называемые ссылки. Ссылка на ячейку Excel может быть относительной илиабсолютной.

Относительные ссылки в Excel

Использование относительных ссылок в Excel аналогично указанию направления движения по улице - "идти три квартала на север, затем два квартала на запад". Следование этим инструкциям из различных начальных мест будет приводить в разные места назначения.

Обычно ссылки на ячейки описываются и используются как относительные (формат записи А1). Когда формула, содержащая эти ссылки, копируется, происходит изменение формулы для поддержания относительности ссылок.

Например, формула, которая суммирует числа в столбце или строке, затем часто копируется для других номеров строк или столбцов. В таких формулах используются относительные ссылки.

  • Создание макроса с относительными ссылками

В этом примере вам предстоит создать макрос с относительными

ссылками для размещения заголовка таблицы продаж компьютеров в

произвольном месте рабочей книги.

Перед созданием макроса включите режим записи с относительными

ссылками. Для этого выполните следующие действия:

· Выполните команду Сервис | Запись макроса | С относительными

ссылками.

· Введите в поле ввода Имя макроса название создаваемого макроса —

Заголовок. В поле ввода Описание введите текст: Вводит названия

компьютеров.

· Нажмите кнопку Параметры. Появится окно диалога “Запись

макроса”.

· Введите наименование добавляемого пункта меню: Типы ЭВМ. Нажмите

кнопку OK.

· Выполните последовательность действий, которую будет выполнять

макрос: введите заголовок таблицы: Тип компьютера; нажмите клавишу

Enter; введите тип 1 компьютера CP_35_SR и нажмите клавишу Tab.

Аналогично введите следующие типы компьютеров CP_40_SR, CP_55_LS,

CP_55_SX. Выделите четыре ячейки с введенными типами компьютеров,

выберите команду Формат | Столбец, а затем команду Подгон ширины

(поскольку названия типов компьютеров не умещаются полностью в ячейке).

· Нажмите на кнопку Остановить макрос.

После окончания записи макроса в меню команды Сервис появится

пункт с названием Типы ЭВМ, которое мы ввели на 4 шаге.

Для выполнения макроса “Заголовок” нужно нажать кнопку мыши на

пункте с названием Типы ЭВМ. В том месте таблицы, где расположен

курсор, появится заголовок следующего вида: Тип компьютера

CP_35_SR CP_40_SR CP_55_LS CP_55_SX

Этот макрос отличается от макроса, созданного в примере №1 тем,

что заголовок таблицы можно поместить в любом месте текущей рабочей

книги.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]