I\'m trying to understand why the following is an error:
class Foobar { public: static void do_something(); }; static void Foobar::do_something() {} // E
This question is already well answered. Details for static can be read here
Golden Rule: The static keyword is only used with the declaration of a static member, inside the class definition, but not with the definition of that static member.