输入std::数组时出现问题
Having troubles with inputing std::array
我在使用std::array时遇到一些问题。
我有一个名为b的数组,让我们这样声明它:array<int,2>b[3];
也许我会用这样的方式输入:
for(int i = 0; i<3; i++){
int a; cin >> a;
b[i] = {a,i};
}
当我这样做的时候,我得到了一个错误:
ar.cpp:30:8: error: expected expression
b[i]={a, i};
还假设我想要输入一个向量<数组<gt>,让我们将其定义为vector<array<int, 2>> ans;
我可能会这样做:
int a = 10, b = 20;
ans.push_back({a,b});
我收到另一个错误:
error: expected expression
ans.push_back({a, j});
注意我把它们作为单独的案例和单独的变量
我尝试过make_pair之类的方法,但没有成功。
这些错误可能是因为我使用的是c++17而不是11。但是我已经尝试了很长时间,但我没能修复它。要帮助我修复它,请转到这里:Visual Studio代码c++11扩展警告和lamda警告
有人能建议我该怎么做而不是这个吗?非常感谢。
注意可能是一种类似于make_pair的方法,但对于vector<数组<gt>我在找什么?当我输入向量对时,我总是使用push_back和make_pair而不是{}或template_back,因为这些方法不起作用,因为我总是收到这样的错误。
在std::array中,第一个模板参数指定了数组的类型。如果你想把一个整数映射到另一个,你可能需要使用std::map:
std::map<int, int> a;
a[3] = 10;
std::cout << a[3] << std::endl;
相关文章:
- cpp二进制搜索问题,计算给定数组中输入元素的出现次数
- 输入std::数组时出现问题
- 类对象数组的问题会导致崩溃
- 传递二维数组时出现问题
- 从 C++ 中的函数返回数组地址问题
- 使用数组时出现问题
- 打印问题.我在数组中打印值时遇到一些问题
- C++:__aligned(__alignof__) 导致字符数组数据出现问题?
- 将字节数组转换为带有字节序问题的指针
- C++ 填充数组时遇到问题
- 遇到此问题时遇到困难:允许用户输入数组的值并使用 for,而循环也输出输入的最大数字
- 这是使用回溯的 nqueen 问题,但我使用了动态 2d 数组,我的程序编译良好,但不返回任何输出
- 当我尝试通过 arduino 上的引用传递布尔数组时出现问题
- 我正在尝试解决一个需要数组总和值但代码不起作用的问题,我想做这样的事情
- 编写 cin.get() 以接收字符数组时出现问题
- 在 C++ Consol 中的数组中执行用户命令时出现问题
- 存储另一个函数返回的布尔数组时遇到问题
- 当我在 CLion 中读取数组中的 txt 文件时C++编码问题
- 运行时C++数组初始化问题
- 我在解决此错误时遇到问题.我正在努力在主函数中传递数组