depending on initialization syntax different constructors would be called:
std::vector<int> v1(10, 20); // use non-std::initializer_list ctor: create 10-element vector, all elements have value of 20
std::vector<int> v2{10, 20}; // use std::initializer_list ctor: create 2-element vector, element values are 10 and 20