Это выглядит просто, но я запутался: способ, которым я создаю вектор из ста, скажем, int
s, равен
std::vector<int> *pVect = new std::vector<int>(100);
Однако, глядя на документацию std :: vector Я вижу, что его конструктор имеет форму
explicit vector ( size_type n, const T& value= T(), const Allocator& = Allocator() );
Итак, как работает предыдущий? new
вызывает конструктор со значением инициализации, полученным из конструктора по умолчанию? Если это так, то
std::vector<int, my_allocator> *pVect = new std::vector<int>(100, my_allocator);
где я передаю свой собственный распределитель, тоже работает?