raw_storage_iterator::operator=

Operatore di assegnazione utilizzato per distribuire il *i non elaborata di espressione iteratore di archiviazione = x per archiviare in memoria.

raw_storage_iterator<ForwardIterator, Type>& operator=(
   const Type& _Val
);

Parametri

  • _Val
    Il valore dell'oggetto di tipo Tipo da inserire in memoria.

Valore restituito

L'operatore consente _Val in memoria e quindi restituisce un riferimento all'iteratore non elaborata di archiviazione.

Note

I requisiti per ForwardIterator dichiarano dell'iteratore non elaborata di archiviazione deve soddisfare richiede solo il *ii di espressione = la t è valido e non occorre ricordare su operator o operator= da sola.Questi operatori *thisdel membro.

L'operatore di assegnazione crea l'oggetto successivo nella sequenza di output utilizzando il valore archiviato iteratori innanzitutto, valutando la nuova espressione NUOVO (void (*) &*primo) Tipo()_Valdi posizione.

Esempio

// raw_storage_iterator_op_assign.cpp
// compile with: /EHsc
#include <iostream>
#include <iterator>
#include <memory>
#include <list>
using namespace std;

class Int 
{
public:
   Int( int i ) 
   {
      cout << "Constructing " << i << endl; 
      x = i;
      bIsConstructed = true;
   };
   Int &operator=( int i ) 
   {
      if ( !bIsConstructed )
         cout << "Not constructed.\n";
      cout << "Copying " << i << endl; x = i;
      return *this;
   };
   int x;
private:
   bool bIsConstructed;
};

int main( void )
{
   Int *pInt = ( Int* )malloc( sizeof( Int ) );
   memset( pInt, 0, sizeof( Int ) ); // Set bIsConstructed to false;

   *pInt = 5;

   raw_storage_iterator<Int*, Int> it( pInt );
   *it = 5;
}
  
  

Requisiti

intestazione: <memory>

Spazio dei nomi: deviazione standard

Vedere anche

Riferimenti

raw_storage_iterator Class