Я в курсе про приведение типов, в старом стиле и функциональном, static_cast и dynamic_cast, но спросить хочу не об этом.
Почему этот идентичный на первый взгляд код работает по разному?
// Старый / Си стиль
std::cout<< (double) 1 / 3 ; // Что то вроде 0.3333333
// Функциональный стиль
std::cout<< double (1 / 3) ; // Почему 0 ?
Что со вторым примером?
Вроде должен создавать временную переменную double, почти то же что и в первом случае, но почему выводится 0 ?