Раньше я думал, что компилятор решает, нужно ли встроить функцию или нет во время компиляции.Встраивается ли во время компиляции или во время выполнения?
Но потом я нашел этот пример кода в «Эффективное использование C++»:
inline void f() {} // assume compilers are willing to inline calls to f
void (*pf)() = f; // pf points to f
f(); // this call will be inlined, because it's a "normal" call
pf(); // this call probably won't be, because it's through a function pointer
Теперь я запутался, что значит ли это решение, следует ли INLINE функцию или не делается во время выполнения, в зависимости от как вы используете эту функцию?
Вот хороший текст: http://www.drdobbs.com/inline-redux/184403879 –
Хмммм. Интересно, почему этот вопрос был опущен ... – Oleksiy