c++ - C++向量默认成一个成员参数
问题描述
来自 php 的低级编码新手,您如何使用向量正确定义成员默认参数?
A(int x = 0, std::string y,
std::vector<std::string> z = {0{"ScreenName","ID"}, ... }
){
switch(x){
case 0: CreateNewPlayer(z["ScreenName"], z["ID"]); break;
default:
/* log function*/
break;
}
}
}
解决方案
首先你需要一个std::map吗?vector
没有接受std::string
.
所以你不能z["key"]
用矢量写(但你可以用地图)
要使用默认参数,您可以说:
A(int x = 0, std::string y = "",
std::vector<std::string> z = {"ScreenName","ID"}, ... )
如果您使用的是地图,那么std::map<std::string, int>{{"screenName", 0}}
检查此问题以获取详细信息 如何在 c++ 中将默认参数设置为类对象?
脚注:您可能还想阅读有关默认参数的详细信息
默认参数只允许在函数声明和 lambda 表达式的参数列表中(C++14 起),并且不允许在函数指针声明、函数引用或 typedef 声明中。
推荐阅读
- gcloud - 无法为服务帐户创建角色,因为“此资源不支持”
- html - 仅在一个元素上允许指针事件
- c - 无法编译 PnetCDF:“tst_rec_vars”测试失败
- javascript - Puppeteer:从数据库中的 for 循环中保存数据
- freecad - 当相交的三角形在同一平面上时,不会检测到自相交
- python - Nornir Netmiko 与 AWS EC2 Cisco IOS-XE 路由器的连接失败 - 由于 SSH 密钥而无法连接?
- elasticsearch - 如何在 DSL 查询中放置或设置两个不同的键
- here-api - 拖动时仅使用主干道
- php - 从0开始将php数据导出到excel
- html - Jupyter 语法高亮
environment