Recentemente, deparei com o seguinte código esotérico.
int main(){(([](){})());}
Reformate-o da seguinte forma para torná-lo mais legível:
int main(){
(([](){})()); // Um... what?!?!
}
Mas não consigo entender como (([](){})())
é um código válido.
- Não parece com a sintaxe do ponteiro de função.
- Não pode ser um truque de sobrecarga do operador. O código compila como está.
O Google não ajudou muito nessa pesquisa com todos os símbolos. Mas ele compila no Visual Studio 2010 e não produz nada. Não houve erros nem avisos. Portanto, parece um código válido.
Eu nunca vi qualquer código válido que está fora de forma bizarra de JavaScript e C ponteiros de função .
Alguém pode explicar como isso é válido em C ++?
Don't sweat it. We have int main(){(([](){})());} which is valid C++"
(9 de novembro no chat)