«Алгоритмы и структуры данных»



жүктеу 1,49 Mb.
бет25/41
Дата24.08.2020
өлшемі1,49 Mb.
#31319
1   ...   21   22   23   24   25   26   27   28   ...   41
СТ Алгоритмы и структуры данных рус

2.2.1. Встраиваемые функции


Функцию можно определить со спецификатором inline. Такие функции называются встраиваемыми. Спецификатор inline указывает компилятору, что открытая подстановка тела функции предпочтительнее обычной реализации вызова функции и что он должен пытаться каждый раз генерировать в месте вызова код, соответствующий встраиваемой функции, а не создавать отдельно код функции (однократно) и затем вызывать её посредством обычного механизма вызова. Спецификатор inline не оказывает влияния на смысл вызова функции.  inline int max(int x, int y) { return x > y ? x : y; }

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

Для всех, кроме простейших, функций время выполнения функций доминирует над издержками времени на обслуживание вызова. Из этого следует, что для всех, кроме простейших, функций экономия за счёт открытой подстановки минимальна. Идеальным кандидатом для открытой подстановки является функция, делающая нечто простое, вроде увеличения или возврата значения. Существование таких функций вызывается необходимостью обработки скрытых данных.


жүктеу 1,49 Mb.

Достарыңызбен бөлісу:
1   ...   21   22   23   24   25   26   27   28   ...   41




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау