C++ 初始化列表std::pair

C++ 初始化列表std::pair,c++,stl,C++,Stl,在构造函数的初始化列表中是否有初始化std::pair的std::vector的方法?我有一个std::vector,我想将一定数量的对初始化为(0,0)。例如,我可能希望为类中的成员初始化3对(0,0)。我该怎么做呢?您可以通过使用std::vector构造函数来实现这一点,该构造函数接受要使用的大小和默认值: class MyClass { public: MyClass(); /* ... */ private: std::vector<pair<in

在构造函数的初始化列表中是否有初始化
std::pair
std::vector
的方法?我有一个
std::vector
,我想将一定数量的对初始化为
(0,0)
。例如,我可能希望为类中的成员初始化3对
(0,0)
。我该怎么做呢?

您可以通过使用
std::vector
构造函数来实现这一点,该构造函数接受要使用的大小和默认值:

class MyClass {
public:
    MyClass();
    /* ... */

private:
    std::vector<pair<int, int> > elems;
};

MyClass::MyClass() : elems(3, std::make_pair(0, 0)) {
    /* ... */
}
class-MyClass{
公众:
MyClass();
/* ... */
私人:
std::向量元素;
};
MyClass::MyClass():元素(3,std::make_pair(0,0)){
/* ... */
}