作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
std::vector<std::vector<Point2d> > components;
其中 Point2d 是一个结构:
struct Point2d {
int x;
int y;
};
std::vector<Point2d> tmp;
components.push_back( tmp );// What does this line do?
我知道问题出在我对 C++ vector 的理解上。据我所知:在上面的代码中,Components 是 vector 的 vector 。内部 vector 是 Point2d 类型。内部 vector 类型的外部 vector 组。
在上面的代码中..Components.push_back(tmp)是做什么用的?
最佳答案
components
的大小增加 1。components
的最后一个元素是 Point2d
的 vector 。此 vector 是从空的 tmp
复制的。在 push_back
操作期间, vector components
可能需要重新分配存储,这可能会复制其元素并使其迭代器无效。
关于c++ - 在 C++ 中,如果我有一个 vector 类型的 vector ,如果我在 : vector_variable. push_back() 之后执行此操作会发生什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28545906/
std::vector > components; 其中 Point2d 是一个结构: struct Point2d { int x; int y; }; std::vector tmp; compo
我是一名优秀的程序员,十分优秀!