Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Templat kelas internal dan tambahan yang mendukung objek irisan umum dengan menyediakan operasi antara array subset yang ditentukan oleh irisan valarrayumum dari .
Sintaks
template <class Type>
class gslice_array : public gsplice {
public:
typedef Type value_type;
void operator=(const valarray<Type>& x) const;
void operator=(const Type& x) const;
void operator*=(const valarray<Type>& x) const;
void operator/=(const valarray<Type>& x) const;
void operator%=(const valarray<Type>& x) const;
void operator+=(const valarray<Type>& x) const;
void operator-=(const valarray<Type>& x) const;
void operator^=(const valarray<Type>& x) const;
void operator&=(const valarray<Type>& x) const;
void operator|=(const valarray<Type>& x) const;
void operator<<=(const valarray<Type>& x) const;
void operator>>=(const valarray<Type>& x) const;
// The rest is private or implementation defined
};
Keterangan
Kelas menjelaskan objek yang menyimpan referensi ke objek va kelas valarray<Type>, bersama dengan objek gs kelas gslice, yang menjelaskan urutan elemen untuk dipilih dari valarray<Type> objek.
Anda membuat gslice_array<Type> objek hanya dengan menulis ekspresi formulir va[gs]. Fungsi anggota kelas gslice_array kemudian berulah seperti tanda tangan fungsi terkait yang ditentukan untuk valarray<Type>, kecuali bahwa hanya urutan elemen yang dipilih yang terpengaruh.
Templat kelas dibuat secara tidak langsung oleh operasi tertentu valarray dan tidak dapat digunakan langsung dalam program. Templat kelas tambahan internal digunakan oleh slice operator subskrip:
gslice_array<Type> valarray<Type>::operator[]( const gslice& ).
Anda membuat gslice_array<Type> objek hanya dengan menulis ekspresi formulir va[gsl], untuk slice gsl dari valarray va. Fungsi anggota kelas gslice_array kemudian berulah seperti tanda tangan fungsi terkait yang ditentukan untuk valarray<Type>, kecuali bahwa hanya urutan elemen yang dipilih yang terpengaruh. Urutan yang dikontrol oleh gslice_array didefinisikan oleh tiga parameter slice konstruktor, indeks elemen pertama di yang pertama slice, jumlah elemen di masing-masing slice, dan jarak antara elemen di masing-masing slice.
Dalam contoh berikut:
const size_t lv[] = {2, 3};
const size_t dv[] = {7, 2};
const valarray<size_t> len(lv, 2), str(dv, 2);
// va[gslice(3, len, str)] selects elements with
// indices 3, 5, 7, 10, 12, 14
Indeks harus valid agar prosedur valid.
Contoh
Lihat contoh untuk gslice::gslice contoh cara mendeklarasikan dan menggunakan slice_array.
Persyaratan
Header:<valarray>
kumpulan nama XML: std