Biblioteca C ++ Valarray - função slice

Descrição

Uma fatia valarray é definida por um índice inicial, um tamanho e um passo e esta classe representa um seletor de fatia valarray. Ele não contém nem se refere a nenhum elemento - apenas descreve uma seleção de elementos a serem usados ​​como um índice em valarray :: operator [].

Declaração

A seguir está a declaração para a função std :: slice.

class slice;

C ++ 11

class slice;

Parâmetros

Nenhum

Valor de retorno

Nenhum

Exceções

Basic guarantee - se alguma operação executada nos elementos lançar uma exceção.

Corridas de dados

Todos os elementos efetivamente copiados são acessados.

Exemplo

No exemplo abaixo, explica sobre a função 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;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

slice(1,5,6): 2 6 33