noinline

Блок, относящийся только к системам Microsoft

__declspec(noinline) указывает компилятору, что определенная функция-член (функция в классе) не может быть встроенной.

Запрещать использовать функцию как встроенную имеет смысл, если она небольшая и не оказывает критического влияния на производительность кода. То есть, если функция небольшая и вряд ли будет вызываться часто (например, функция, которая обрабатывает условие ошибки).

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

class X {
   __declspec(noinline) int mbrfunc() {
      return 0; 
   }   // will not inline
};

См. также

Ссылки

__declspec

Ключевые слова в C++

inline, __inline, __forceinline