vector<char> rom (13)={'M','CM','D','CD','C','XC','L','XL','X','IX','V','IV','I'}; 这个语句哪里错误了
时间: 2023-08-08 16:08:07 浏览: 30
这个语句有两个问题:
1. 在定义 `vector` 对象时,不能在括号内同时指定大小和初始化列表。
2. 初始化列表中有多个元素,但是 `vector` 对象的类型为 `char`,而不是 `string`。
正确的写法如下:
```
std::vector<std::string> rom = {"M", "CM", "D", "CD", "C", "XC", "L", "XL", "X", "IX", "V", "IV", "I"};
```
这样定义后,`rom` 就是一个大小为13的 `vector` 对象,其中每个元素都是一个 `string` 类型的罗马数字字符串。
相关问题
Vector<Vector<String>> rowData = new Vector<>();
`Vector<Vector<String>> rowData = new Vector<>();` 这行代码创建了一个二维的 Vector 对象,用于存储表格中的行数据。其中,外层的 Vector 存储多个内层的 Vector,每个内层 Vector 存储一行数据,内层 Vector 中的元素都是字符串类型。
在这个示例中,我们没有添加任何数据到 rowData 中,因此表格一开始是空的。在添加数据时,我们将新的一行数据存储到一个内层 Vector 中,然后将这个内层 Vector 添加到 rowData 中即可。这样,每次添加数据时,rowData 中就会新增一行数据。
需要注意的是,由于 Java 中的 Vector 是线程安全的,因此在多线程环境下使用 Vector 可以避免一些并发问题。但是,在单线程环境下,建议使用 ArrayList 等非线程安全的集合类,因为它们的性能更好。
vector<vector<char>> grid(H, vector<char>(W));在c++中是什么意思
这段代码定义了一个二维字符数组 `grid`,其大小为 `H` 行 `W` 列。它使用了 C++ 的 STL(标准模板库)中的 `vector` 容器,其中每个元素都是一个 `vector<char>` 类型的向量。在这里,`vector<char>(W)` 表示初始化一个大小为 `W` 的字符向量,`vector<vector<char>>(H, vector<char>(W))` 表示初始化一个大小为 `H` 行 `W` 列的二维字符数组 `grid`,每个元素都是一个大小为 `W` 的字符向量。