C++ Valarray 库 - slice 函数
描述
valarray 切片由起始索引、大小和步幅定义,此类表示 valarray 切片选择器。 它不包含也不引用任何元素 - 它只描述了在 valarray::operator[] 中用作索引的元素选择。
声明
以下是 std::slice 函数的声明。
class slice;
C++11
class slice;
参数
none
返回值
none
异常
Basic guarantee − 如果对元素执行的任何操作引发异常。
数据竞争
所有有效复制的元素都被访问。
示例
在下面的示例中解释了 std::slice 函数。
#include <iostream>
#include <cstddef>
#include <valarray>
int main () {
std::valarray<int> foo (10);
for (int i=0; i<10; ++i) foo[i]=i;
std::valarray<int> bar = foo[std::slice(2,3,4)];
std::cout << "slice(1,5,6):";
for (std::size_t n=0; n<bar.size(); n++)
std::cout << ' ' << bar[n];
std::cout << '\n';
return 0;
}
让我们编译并运行上面的程序,这将产生以下结果 −
slice(1,5,6): 2 6 33

