Czy naprawdę powinienem używać static_cast za każdym razem, gdy chcę konwertować między typami pierwotnymi?

Co to sprawia

long l = 1;
char c = static_cast<char>(l);

float f = 1.0f;
int i = static_cast<int>(f);

lepszy niż ten

long l = 1;
char c = (char)l;

float f = 1.0f;
int i = (int)f;

podczas rzutowania jednego prymitywnego typu danych na inny?

Mam wiele starszego kodu, który używa drugiego stylu do rzutowania typu w podobnych sytuacjach, więc jest to również pytanie o to, czy powinienem, czy nie, wykonać pełną wersję tego kodu.

questionAnswers(5)

yourAnswerToTheQuestion