eclaração de função dentro ou fora da clas

Sou desenvolvedor de JAVA que está tentando aprender C ++, mas realmente não sei qual é a melhor prática para declarações de função padrã

Na aula

class Clazz
{
 public:
    void Fun1()
    {
        //do something
    }
}

Ou fora:

class Clazz
{
public:
    void Fun1();
}

Clazz::Fun1(){
    // Do something
}

Sinto que o segundo pode ser menos legível ...

questionAnswers(14)

yourAnswerToTheQuestion