O map do C++ ainda não ficou claro, os input do tipo char ficam armazenados lá, com as suas chaves e valores?
Então os chutes errados também estariam no map?.
Se a chave do map é um char e o valor é um bool
for(char letra : PALAVRA_SECRETA) {
if(chutou[letra]) {
cout << letra << " ";
} else {
cout << "_ ";
}
}O if só tá verificando cada carácter da PALAVRA_SECRETA. Mas e o bool do map, não tá sendo usado?