打印 vector<Point2i> 的元素

Posted

技术标签:

【中文标题】打印 vector<Point2i> 的元素【英文标题】:printing elements of a vector<Point2i> 【发布时间】:2016-04-19 16:49:17 【问题描述】:

如果我有一个向量并像这样初始化它。如何分别访问点的第一部分和第二部分。

vector<Point2i> cent_i(1); // how do i initialize with a point like (1,2 )
cent_i[0][0] = (floor( s.width/2)); //TRYING TO change the points
cent_i[0][1] = (floor( s.height/2));

我不知道我这样做是否正确

【问题讨论】:

【参考方案1】:

可以直接在构造函数中初始化点,如:

vector<Point> pts Point(1,2), Point(3,4), Point(5,6);

或:

vector<Point> pts 1,2, 3,4, 5,6;

您可以访问向量的第 i 个Point,例如:

pts[i].x = ...
pts[i].y = ...

请记住,Point 只是 typedefPoint2i

【讨论】:

【参考方案2】:

基于来自 OpenCv 的 Documentation。以下是您如何索引名为 Point2istd::vectorpoints

points[0].x, points[0].y, points[1].x, points[1].y, ...

【讨论】:

以上是关于打印 vector<Point2i> 的元素的主要内容,如果未能解决你的问题,请参考以下文章

如何在 C++ 中打印矢量 <vector<int>>? [复制]

打印powerset [关闭]

之字形打印二叉树

顺时针打印矩阵

OpenCV 向量访问错误

顺时针打印矩阵