Могут ли современные C ++ компиляторы встроить функции, определенные в файле cpp

Я знаю, что ключевое словоinline имеет полезные свойства, например для хранения специализаций шаблона внутри заголовочного файла. С другой стороны, я часто читал, чтоinline почти бесполезен как подсказка для компилятора на самом деле встроенные функции. Кроме того, ключевое слово не может использоваться внутри файла cpp, так как компилятор хочет проверить функции, помеченныеinline ключевое слово всякий раз, когда они называются.

Поэтому я немного озадачен возможностями «автоматического» встраивания современных компиляторов (а именно gcc 4.43). Когда я определяю функцию внутри cpp, может ли компилятор встроить ее в любом случае, если он считает, что встраивание имеет смысл для функции, или я отнимаю у него некоторые возможности оптимизации? (Что было бы хорошо для большинства функций, но важно знать для маленьких, вызываемых очень часто)

Ответы на вопрос(4)

Ваш ответ на вопрос