Namespaces
Variants

std::valarray<T>::shift

De es.cppreference.net
 
 
 
 
valarray<T> shift( int count ) const;

Devuelve un nuevo valarray del mismo tamaño con elementos cuyas posiciones son desplazadas por count elementos. La nueva posición de cada elemento es i−count donde i es la posición anterior. El valor de los elementos desplazados es T().

Parámetros

count - número de posiciones para desplazar los elementos

Valor de retorno

El valarray resultante con elementos desplazados.

Notas

La función puede implementarse con un tipo de retorno diferente a std::valarray. En este caso, el tipo de reemplazo tiene las siguientes propiedades:

  • Todas const las funciones miembro de std::valarray son proporcionadas.
  • Se pueden construir std::valarray, std::slice_array, std::gslice_array, std::mask_array y std::indirect_array a partir del tipo de reemplazo.
  • Para cada función que tome un const std::valarray<T>& excepto begin() y end()(desde C++11), se añadirán funciones idénticas que tomen los tipos de reemplazo;
  • Para cada función que tome dos const std::valarray<T>& argumentos, se añadirán funciones idénticas que tomen cada combinación de const std::valarray<T>& y tipos de reemplazo.
  • El tipo de retorno no agrega más de dos niveles de anidamiento de plantillas sobre el tipo de argumento más profundamente anidado.

Ejemplo

#include <iostream>
#include <valarray>
int main()
{
    std::valarray<int> v{1, 2, 3, 4, 5, 6, 7, 8};
    for (auto const& val : v)
        std::cout << val << ' ';
    std::cout << '\n';
    std::valarray<int> v2 = v.shift(2);
    for (auto const& val : v2)
        std::cout << val << ' ';
    std::cout << '\n';
}

Salida:

1 2 3 4 5 6 7 8 
3 4 5 6 7 8 0 0

Véase también

desplazamiento circular de los elementos del valarray
(función miembro pública)