Может ли компилятор инлайнить функции, реализация которой вынесена в cpp файл?

Может ли компилятор инлайнить функции, реализация которой вынесена в cpp файл? Функции и методы реализованные в месте объявления по умолчанию являются inline, и встраиваются на усмотрение компилятора, но ограничивает ли компилятор то, что реализация вынесена в cpp файл?


Ответы (1 шт):

Автор решения: HolyBlackCat

Только если функция вызывается из того же файла, или если включена оптимизация во время линковки (-flto на GCC и Clang-е, указывать и при компиляции, и при линковке).

Функции и методы реализованные в месте объявления по умолчанию являются inline,

Только если они определены внутри тела класса.

→ Ссылка