функции } Замена вызовов функц

Автор admin Суббота, 16 мая 2009 11:32

функции } Замена вызовов функции копией ее кода называется макрорасширением (inline expansion) или встраиванием (inlining). ПРИМЕЧАНИЕ- Использование директивы inline, эквивалентной специфической директиве Microsoft Jnline, не дает гарантии, что функция будет реализована как встроенная. В некоторых ситуациях компилятор может сгенерировать обычный вызов функции, например в том случае если она является рекурсивной (то есть вызывает саму себя) или вызывается указателем функции. Встроенные функции-члены 471 Чтобы в каждом модуле, содержащем вызовы встроенной функции, были доступны копии ее определения, функцию необходимо определить в файле заголовков, вызываемом каждым исходным файлом. При изменении встроенной функции все исходные файлы, содержащие ее вызовы, должны быть перекомпилированы. При использовании inline-функций программа выполняется быстрее, однако размер результирующего кода увеличивается. Поэтому функция, при определении которой используется спецификатор inline, должна быть небольшой, особенно в случае ее многократного вызова в цикле. Механизм встраивания кода inline-функций напоминает принцип


Комментарии закрыты.