C++ Valarray 库 - slice 函数



描述

Valarray 切片由起始索引、大小和步长定义,此类表示 valarray 切片选择器。它不包含也不引用任何元素——它只描述要作为 valarray::operator[] 中索引使用的元素选择。

声明

以下是 std::slice 函数的声明。

class slice;

C++11

class slice;

参数

返回值

异常

基本保证 - 如果对元素执行的任何操作抛出异常。

数据竞争

访问所有有效复制的元素。

示例

以下示例说明了 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
valarray.htm
广告