Почему прямая инициализация списка с помощью auto считается плохой или не предпочтительной?

У меня появилась привычка писать код с прямой инициализацией списков, как показано ниже, так как это более эффективно и очень полезно для предотвращения неявногоуменьшение:

int i {0};
string s {""};
char c {'a'};
bool b {false};

auto num {100}; // But this??

Но когда дело доходит до автоматического спецификатора, я слышал, что это считается плохим или не предпочтительным писать так, почему это так?

Ответы на вопрос(1)

Ваш ответ на вопрос