目录
一、std::vector 的构造函数举例
#include <vector>
#include <string>
#include <iostream>
template<typename T>
std::ostream& operator<<(std::ostream& s, const std::vector<T>& v)
{
s.put('[');
char comma[3] = {'\0', ' ', '\0'};
for (const auto& e : v) {
s << comma << e;
comma[0] = ',';
}
return s << ']';
}
int main()
{
// c++11 initializer list syntax:
std::vector<std::string> words1 {"the", "frogurt", "is", "also", "cursed"};
std::cout << "words1: " << words1 << '\n';
//words1: [the, frogurt, is, also, cursed]
// words2 == words1
std::vector<std::string> words2(words1.begin(), words1.end());
std::cout << "words2: " << words2 << '\n';
//words2: [the, frogurt, is, also, cursed]
// words3 == words1
std::vector<std::string> words3(words1);
std::cout << "words3: " << words3 << '\n';
//words3: [the, frogurt, is, also, cursed]
// words4 is {"Mo", "Mo", "Mo", "Mo", "Mo"}
std::vector<std::string> words4(5, "Mo");
std::cout << "words4: " << words4 << '\n';
//words4: [Mo, Mo, Mo, Mo, Mo]
}
二、 std::vector 构造函数列表
- vector();
- vector( const Allocator& alloc );
- vector( size_type count, const T& value, const Allocator& alloc = Allocator());
- vector( size_type count );
- vector( InputIt first, InputIt last, const Allocator& alloc = Allocator() );
- vector( const vector& other );
- vector( const vector& other, const Allocator& alloc );
- vector( vector&& other );
- vector( vector&& other, const Allocator& alloc );
- vector( std::initializer_list<T> init, const Allocator& alloc = Allocator() );