int main()
{
//127 em binario 000001111111
std::cout << "\n\t127 em hexadecimal: " << std::hex << 127
<< "\n\t127 em octal: " << std::oct << 127
<< "\n\t127 em decimal: " << std::dec << 127
<< "\n\t127 em binario: " << bin << 127
<<"\n\n";
}
se eu fizer const Bin& f ao compilar retorna o seguinte erro abaixo:
operatorBin.cxx: In function ‘std::ostream& operator<<(std::ostream&, const Bin&)’:
operatorBin.cxx:54:23: error: passing ‘const Bin’ as ‘this’ argument discards qualifiers [-fpermissive]
saida << f.binary(f.b);
^
operatorBin.cxx:31:13: note: in call to ‘std::string Bin::binary(unsigned int)’
std::string binary(unsigned int n)
agora se eu fizer Bin& f;
ele nao da o erro acima compila tranquilamente mas, ao executar ele nao converte o numero usando o operator sobrecarregado..
O que esta dando de errado?