: -, std::initializer_list
, , , ( [over.match.list]).
a std::initializer_list<E>
const E[N]
N ( [ dcl.init.list]/5).
vector<string> v = {{"a", "b"}};
initializer_list<string>
, 1 const string
, string
, {"a", "b"}
. - string
, , ( UB, ). .
vector<int> v = {{2, 3}};
initializer_list<int>
, 1 const int
, int
{2, 3}
. .
, vector
. :
vector(vector&& )
, , , {2, 3}
- 2 const int
, .vector(std::initializer_list<int> )
, . , initializer_list
{2, 3}
, .
, [over.ics.list], vector(vector&& )
, vector(initializer_list<int> )
identity, .
, vector(vector const&)
, .