隔离C 中向量的一列
Isolate a column of a vector in c++
i有一个2D矢量的字符串向量,需要将三个列分离为3个单独的1D数组,以便我可以将它们转换为双打并在它们上执行操作。
简单地使用:
for (int i = 0; i < 100; i++)
{
vectorname[i][2] = arrayname[i];
}
不起作用,我不明白为什么。
对不起,我是编码的新手,并提前感谢。
多亏了第一个答复,我不在乎我是否删除数据,我只需要它,以便我可以操作,我的向量被称为:
string vectorname[101][5];
string arrayname[99];
string arrayname2[99];
string arrayname3[99];
好吧,我没有将矢量定义为向量,它只是一个2D字符串,我可以从中提取一列吗?
列仍需要保留在2D向量中,还是完全作为独立数据将其拉出?
如果您需要独立的数据,我会做
vector<double> col(vectorname[i]);
然后根据需要操纵Col。如果您不再需要2D向量中的数据,甚至可以进行移动构造。
我认为您在其他地方有实际逻辑问题。向我们展示您的矢量声明。
编辑:什么...?您根本没有宣布向量。您正在使用纯数组。2D数组不应称为向量。您将其他程序员与您的姓名方案感到困惑。
声明字符串向量的正确方法是
std::vector<string> vectorname(100);
和字符串向量(2D向量)的向量为
std::vector<std::vector<string>(5)> vectorname(101);
但此外,您的尺寸不匹配。您的一维矢量需要与2D给定的尺寸相同,在这种情况下为5(101?)。
如果您试图沿着值的第一个维度复制值,则没有直接的构造函数。您必须手动循环从0到100,然后说
arrayname[i] = vectorname[i][n];
其中n是您的列号。
相关文章:
- 查找矩阵C++中每一列和每一行的最小和最大元素
- 如何在C++中获取二维数组中最少的一列数?
- 当表示为对象的一维向量时,有效地旋转 NxM 矩阵 (C++)
- 如何允许用户选择何时停止三列中的每一列的旋转
- 从我的2d数组中的一列返回的字符串值被压缩为一个字符串(在Mac os上打开Windows txt文件)
- 在犰狳立方体中添加一列 1 的有效方法
- 创建一组向量
- 在二维向量的每一列中查找最大值
- 只有一列适合其内容大小,而另一列则拉伸
- 如何使用嵌套初始化构造函数中的一维向量初始化矩阵
- 如何将单独的数组分组在一起(类似于按一列对表进行排序)
- C++ 最后一列中的直方图错误
- 添加两个矩阵会打印一列垃圾数据 c++
- C 特征:通过参考将矩阵的一列传递到函数中
- 仅制作一列qtreewidget可编辑//故障排除
- 在 QTableView 中仅对一列进行排序,而不对其他列进行排序.独立列
- 按列对CSV文件进行排序,并与C 中的另一列进行比较
- 隔离C 中向量的一列
- C++ 向量 下一列的向量大小
- 访问矩阵的一列作为特征中的向量