共用方式為


raw_storage_iterator::operator =

指派運算子用於實作未經處理的儲存區 Iterator 運算式儲存的*i = x 在記憶體中。

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

參數

  • _Val
    型別中插入的 [型別] 物件值的深層複本載入記憶體。

傳回值

運算子插入 _Val 載入記憶體,然後傳回原始儲存 Iterator 的參考。

備註

ForwardIterator 的需求,說明未經處理的儲存區 Iterator 所必須滿足只需要運算式*ii t =有效,因此,它不會有本身沒有相關的說明 operatoroperator= 。 這些成員運算子會傳回 *this

指派運算子會先建構在輸出序列中的下一個物件使用預存的 Iterator 值,藉由評估放置新的運算式 new (void (*) &*first) [型別](_Val)。

範例

// 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;
}
  
  

需求

標題: <memory>

命名空間: std

請參閱

參考

raw_storage_iterator Class