Como adicionar recuo ao operador de fluxo
Em nosso projeto, usamos o operador de fluxo c ++ (<<) em nosso modelo de objeto para imprimir um formato legível e fácil dos dados. Um exemplo simplificado é este:
std::ostream& operator<<(std::ostream & oStream, const OwnClass& iOwnClass) {
oStream << "[SomeMember1: " << iOwnClass._ownMember1 << "]\n";
oStream << "[SomeMember2: " << iOwnClass._ownMember2 << "]\n";
}
Resultando isso no log:
[SomeMember1: foo]
[SomeMember2: bar]
O que queremos agora é poder recuar o resultado desse operador. Algumas classes de chamada podem não querer o resultado dessa forma, mas desejam adicionar recuo de 2 espaços antes de cada linha. Poderíamos adicionar um membro à nossa classe especificando o recuo, mas isso não parece ser uma solução elegant
Claro que esse não é um problema muito grande, mas nosso registro seria muito melhor se isso funcionass
Obrigad