Pergunta

Alguém pode me dizer o que este elenco tem para o efeito (além de definir happyNumber de 1337), se algum, e se ele não tem outro efeito, como é que eu posso escrever código como este ??? Isso é um erro do compilador, ou algum "escondido recurso" do C ++?

int happyNumber = static_cast<int>(123.456, TRUE, "WTF" , false , "IS" , NULL , "GOING" , 0xff , "ON???" , 1337);

Fiquei surpreso este seria compilar em tudo. Eu encontrei-o através de um bug onde eu acidentalmente definir o segundo parâmetro para algo que era para ir em uma chamada de função da expressão ser fundido. Isto resultou em um erro desagradável onde o objeto foi lançado a partir do segundo parâmetro, chamando a função com apenas um argumento. É compilado ... E inicialmente não crescer ...

Estou usando o Microsoft Visual C ++ 2008.

scroll top