Inline functions are good for performance reasons, normally when you call a function a jump occurs in the code which creates some [minor] ovehead. Inlining is good when the function is trivial (one liners, getters, setters, etc.), or it can be good if you have performance problems. Lastly, the compiler may not inline your method, it may put in code for a function call anyway.
You can do inlining nice like this:
Code:
class X {
public:
void foo( );
};
inline void X::foo( ) {
cout << "hello from foo\n";
}
Any function not inlined is "outlined" I suppose.