Usar o “namespace foo {” em vez de se qualificar explicitamente fora dos arquivos de cabeçalho [fechados]

Se uma função for declarada como tal:

namespace foo {
    void bar();
}

maioria das pessoas define a função assim:

void foo::bar() {
    ...
}

Como eu gosto de fazer assim:

namespace foo {
    void bar() {
        ...
    }
}

Eu prefiro esse estilo porque me evita sempre digitar foo ::, que geralmente é tedioso em parâmetros de função que aceitam tipos declarados no mesmo espaço de nome. Além disso, é mais fácil renomear todo o espaço para nom

Estou me perguntando por que quase nunca vejo meu estilo no código de outras pessoas, também há alguma desvantagem, além do nível de indentação adicional (e você nem precisa recuar namespaces)?

questionAnswers(3)

yourAnswerToTheQuestion