Vector

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

some useful tips (mostly for myself)