Dev C++编译器无法使用unordered_map的报错问题咨询
Dev C++ 修复unordered_map C++11编译报错方案
报错的核心原因是unordered_map属于C11标准新增的标准容器,Dev C默认使用C98标准编译,未开启C11支持,按照以下步骤配置即可解决:
- 打开Dev C++,点击顶部菜单栏的工具选项,选择下拉列表中的编译选项
- 在弹出的配置窗口中,勾选「编译时加入以下命令」复选框
- 在复选框下方的输入框中添加编译参数:
-std=c++11,若需要使用GNU专属扩展特性可替换为-std=gnu++11 - 点击「确定」保存配置,重新编译当前项目即可生效
功能验证代码
配置完成后可以编译运行以下代码验证功能是否正常:
#include <iostream> #include <unordered_map> using namespace std; int main() { unordered_map<string, int> demo; demo["test1"] = 10; demo["test2"] = 20; for (auto &item : demo) { cout << item.first << " : " << item.second << endl; } return 0; }
内容的提问来源于stack exchange,提问作者Gulshan Aggarwal
相关产品推荐
相关产品推荐

