В чем разница между
int a;
// a gets some value
double pi = static_cast<double>(a)/3;
и
int a;
// a gets some value
double pi = double(a)/3;
Вы когда-нибудь видели последнего? Мне кажется, я видел это в каком-то фрагменте, написанном Страуступом, но я не могу найти ссылку.