C++ 使用 vector 获取前六个元素并传入函数
C++ 获取 vector 的前六个元素并传入函数
可以使用 vector 的 begin() 和 end() 函数来获取迭代器,然后使用 std::advance() 函数将迭代器移动到第六个元素的位置,最后使用 std::vector 的构造函数将前六个元素复制到一个新的 vector 中,作为参数传入另一个函数。
示例代码
#include <iostream>
#include <vector>
#include <algorithm>
void foo(std::vector<unsigned char> v) {
for (auto c : v) {
std::cout << static_cast<int>(c) << " ";
}
std::cout << std::endl;
}
int main() {
std::vector<unsigned char> v = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
auto it = v.begin();
std::advance(it, 6); // 移动迭代器到第六个元素的位置
std::vector<unsigned char> v2(v.begin(), it); // 复制前六个元素到新的 vector 中
foo(v2); // 将新的 vector 作为参数传入另一个函数
return 0;
}
输出
1 2 3 4 5 6
原文地址: http://www.cveoy.top/t/topic/hDW7 著作权归作者所有。请勿转载和采集!