You do not need a definition to call a function, you only need an declaration. The compiler is only satisfied with the declaration. The compiler requires code generation and requires definition, but it does not matter when you define them, if you do.
In your case, the declaration of each member function is visible to all other member functions, even if it appears after the class definition after:
class Time
{
void setTime();
void sethour();
};
, , . - :
void foo();
void goo()
{
foo();
}