Aracılığıyla paylaş


indirect_array sınıfı

Üst dizinin dizinlerinin alt valarraykümesini belirterek tanımlanan alt küme dizileri valarray arasında işlemler sağlayarak nesnelerin alt kümesi olan nesneleri destekleyen iç, yardımcı sınıf şablonu.

Sözdizimi

Açıklamalar

sınıfı, sınıfın nesnesine başvuruyu depolayan bir nesneyi va valarray<Type>xa ve nesneden valarray<Type> seçebileceğiniz öğe dizisini açıklayan sınıfı valarray<size_t>nesnesini açıklar.

Bir indirect_array<Type> nesneyi yalnızca formunun va[xa]bir ifadesini yazarak oluşturursunuz. Sınıfın indirect_array üye işlevleri, yalnızca seçili öğelerin sırasının etkilenmesi dışında, için valarray<Type>tanımlanan karşılık gelen işlev imzaları gibi davranır.

Dizisi, öğesi içindeki dizine xa[I] dönüşdüğü öğelerden oluşurxa.size.vaI

Örnek:

// indirect_array.cpp
// compile with: /EHsc
#include <valarray>
#include <iostream>

int main( )
{
   using namespace std;
   int i;

   valarray<int> va ( 10 );
   for ( i = 0 ; i < 10 ; i += 2 )
      va [ i ] =  i;
   for ( i = 1 ; i < 10 ; i += 2 )
      va [ i ] =  -1;

   cout << "The initial operand valarray is:  ( ";
      for ( i = 0 ; i < 10 ; i++ )
         cout << va [ i ] << " ";
   cout << ")." << endl;

   // Select 2nd, 4th & 6th elements
   // and assign a value of 10 to them
   valarray<size_t> indx ( 3 );
   indx [0] = 2;
   indx [1] = 4;
   indx [2] = 6;
   va[indx] = 10;

   cout << "The modified operand valarray is:  ( ";
      for (i = 0 ; i < 10 ; i++ )
         cout << va [ i ] << " ";
   cout << ")." << endl;
}

Çıktı

The initial operand valarray is:  (0 -1 2 -1 4 -1 6 -1 8 -1).
The modified operand valarray is:  (0 -1 10 -1 10 -1 10 -1 8 -1).

Gereksinimler

Üst Bilgi:<valarray>

Ad alanı: std

Ayrıca bkz.

C++ Standart Kitaplığı'nda iş parçacığı güvenliği