C++ 11에서 std :: vector는 생성자가 vector(size_type n)
이고 기본값은 n
이며 기본 구성 가능, 이동 가능, 복사 불가능 클래스와 함께 사용할 수 있습니다.C++ 11에 vector (size_type n, const Allocator & alloc)가없는 이유는 무엇입니까?
그러나, 다른 모든 벡터 생성자와는 달리 할당을 취하는 변형이 없다, 나는 다음에 의지 한 :
// Foo is default constructible and moveable, but not copyable
const int n = 10; // Want 10 default constructed Foos
std::vector<Foo, CustomAllocator> foos(allocator);
foos.reserve(n);
for (int i = 0; i < n; ++i)
foos.emplace_back();
이 작업을 수행 할 수있는 더 나은 방법이 있나요? 특정 이유가 있습니까 vector(size_type n, const Allocator& alloc)
표준에서 생략 되었습니까?
사양에 결함이있는 것 같습니다. 보고서가없는 경우 보고서를 제출하십시오. –
@ NicolBolas에는 신고 접수 프로세스를 설명하는 문서가 있습니까? – rkjnsn
신경 쓰지 마라. 내 게시물보기. –