Libreria C ++ Valarray - funzione gslice
Descrizione
Uno slice generalizzato valarray è specificato da un indice iniziale, un insieme di dimensioni e un insieme di passi e questa classe rappresenta un selettore slice generalizzato valarray (uno slice multidimensionale). Non contiene né si riferisce ad alcun elemento - descrive solo una selezione di elementi da usare come indice in valarray :: operator [].
Dichiarazione
Di seguito è riportata la dichiarazione per la funzione std :: gslice.
class gslice;
C ++ 11
class gslice;
Parametri
nessuna
Valore di ritorno
nessuna
Eccezioni
Basic guarantee - se qualsiasi operazione eseguita sugli elementi genera un'eccezione.
Gare di dati
Si accede a tutti gli elementi effettivamente copiati.
Esempio
Nell'esempio seguente viene illustrata la funzione std :: gslice.
#include <iostream>
#include <cstddef>
#include <valarray>
int main () {
std::valarray<int> foo (12);
for (int i=0; i<12; ++i) foo[i]=i;
std::size_t start=1;
std::size_t lengths[]= {2,3};
std::size_t strides[]= {7,2};
std::gslice mygslice (start,
std::valarray<std::size_t>(lengths,2),
std::valarray<std::size_t>(strides,2));
std::valarray<int> bar = foo[mygslice];
std::cout << "gslice:";
for (std::size_t n=0; n<bar.size(); n++)
std::cout << ' ' << bar[n];
std::cout << '\n';
return 0;
}
Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:
gslice: 1 3 5 8 10 0