vector<double> hour { vector<double>(24, -1) };
Это приведет к одному вектору из 24 с -1 с именем hour
.vector<double>(24, -1)
внутри {}
является временным вектором, который создается для создания вектора hour
.
Визуально с опущенным символом .0:
{-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1}
Если это так, то почему часовой вектор типа 'vector' вместо 'double'?
Часовой вектор типа vector<double>
<> для шаблонови определите во время компиляции, какой тип будет содержать вектор.
Если бы вместо этого он сказал vector<int> hour
, это был бы вектор значений int
вместо double
значений.