我有一个 std::pair 声明,如下面的代码片段所示,并且 g++ 在第 152 行出现编译错误,提示“错误:模板参数数量错误(1,应该是 2)”。我对这个 std::pair 很陌生,我想知道我做错了什么。所以提到的行号已在下面的代码片段中标记。谢谢。
std::vector<
std::pair<EndPointAddr* requesterServiceAddr,
EndPointAddr* requestedServiceAddr>* //LINE 152 is HERE
> mServiceSubscriptionsList;
In file included from ServiceRegistrar.hpp:8:0,
from ServiceRegistrar.cpp:7:
../control_api/ServiceRegistrarAPI.hpp:152:95: error: wrong number of template arguments (1, should be 2)
........
.......
../control_api/ServiceRegistrarAPI.hpp:153:14: error: template argument 1 is invalid
../control_api/ServiceRegistrarAPI.hpp:153:14: error: template argument 2 is invalid
In file included from ../control_api/ServiceRegistrarAPI.cpp:5:0:
最佳答案
std::pair
只需要声明中的类型。
std::vector<
std::pair<EndPointAddr*,
EndPointAddr* >* //LINE 152 is HERE
> mServiceSubscriptionsList;
关于c++ - std::pair - 错误:模板参数数量错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15954086/