Может ли кто-нибудь сказать мне, что это делает для эффекта (помимо установки happyNumber до 1337), если он вообще есть, и если он не имеет другого эффекта, почему я могу написать такой код? Является ли это ошибкой компилятора или некоторой "скрытой функцией" на С++?
int happyNumber = static_cast<int>(123.456, TRUE, "WTF" , false , "IS" , NULL , "GOING" , 0xff , "ON???" , 1337);
Я был удивлен, что это вообще скомпилируется. Я нашел это через ошибку, где я случайно установил второй параметр для чего-то, что предназначалось для вызова функции выражаемого выражения. Это привело к неприятной ошибке, когда объект был отличен из второго параметра, вызвав функцию только одним аргументом. Он собрал... И не изначально бум...
Я использую Microsoft Visual С++ 2008.