Описание тега inline

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

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

Исторически сложилось так, что в языках программирования C и C++ встроенная функция - это функция, для которой компилятор должен выполнить встроенное расширение. Другими словами, программист попросил компилятор вставить полное тело функции в каждое место, где она вызывается, а не генерировать код для вызова функции в одном месте, где она определена. Однако современные компиляторы обычно используют собственную эвристику и игнорируют запрос. Таким образомinline Ключевое слово теперь в основном используется для его воздействия на правило единого определения.

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