c++中并沒有切片(slice)這種原生的數據結構或語法,但可以通過使用標準庫中的 vector 或者數組來實現切片操作。例如,可以使用 vector 的成員函數 std::vector::begin()
和 std::vector::end()
來獲取切片的起始迭代器和終止迭代器,然后通過遍歷或者其他操作實現切片。
另外,C++11 引入了范圍循環(range-based for loop)語法,可以更方便地對容器進行遍歷,也可以用來實現類似切片的功能。例如:
#include <iostream>
#include <vector>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
// 使用范圍循環實現切片
for (int i : vec) {
if (i >= 3 && i <= 7) {
std::cout << i << " ";
}
}
std::cout << std::endl;
return 0;
}
這段代碼會輸出 3 4 5 6 7,實現了對 vec 的“切片”操作。