因此,我想将此 vector 对成一对动画状态。但是,这显然不起作用,因为它显然与参数列表不匹配。所以基本上我的问题是,有没有办法在不使用方括号的情况下成对创建 vector ?这是我的代码。
std::vector < std::pair < std::string, std::vector < int > > > animations ={
std::make_pair("PlayerStand.png", { 0,0,0,0 })
};
我确信这个问题对任何C++专家来说都是很容易的,但是我已经搜索了 vector 参数列表,但是没有运气。
最佳答案
大括号的初始化器列表是无类型的,并且不能与转发引用(例如std::make_pair
的构造函数中使用的转发引用)一起使用时推导。您必须明确输入它们:
std::pair < std::string, std::vector < int > > animations ={
std::make_pair("PlayerStand.png", std::vector<int>{ 0,0,0,0 })
};
关于c++ - 有没有办法将 vector 成对放在方括号中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63333462/