[英]How to initialize a vector of pair of string,string in a c++ class?
如何在C ++类中初始化一对字符串的向量? 我尝试了几件事但没有成功。
vector<pair<string,string>> myVec(); //doesn't work
没有必要以这种方式初始化向量
vector<pair<string,string>> myVec();
它是一个名为myVec
的函数声明,它没有参数,并且返回类型为vector<pair<string,string>>
简单地写就足够了
vector<pair<string,string>> myVec;
因为在任何情况下你都在创建一个空矢量。
或者,如果您希望向量具有一些初始值,并且您的编译器支持C ++ 2011,那么您也可以编写例如
std::vector<std::pair<std::string, std::string>> myVec =
{
{ "first", "first" }, { "second", "second" }, { "third", "third" }
};
如果你使用()
你会遇到最令人烦恼的解析 。 您声明了一个不带参数的函数myVec
,并返回一个vector<pair<string, string>>
切换到{}
vector<pair<string,string>> myVec{};
试着像这样使用它,目前你的函数myVec
没有参数并返回vector<pair<string,string>>
:
vector<pair<string,string>> myVec{};
要么
vector<pair<string,string>> myVec;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.