次の方法で共有


operator!= (<memory>)

オブジェクトが異なっているかどうかをテストします。

template<class Type, class Other>
   bool operator!=(
      const allocator<Type>& _Left,
      const allocator<Other>& _Right
   ) throw();
template<class Type1, class Del1, class Type2, class Del2>
    bool operator!=(
        const unique_ptr<Type1, Del1>& _Left,
        const unique_ptr<Type2&, Del2>& _Right
);
template<class Ty1, class Ty2>
    bool operator!=(
        const shared_ptr<Ty1>& _Left,
        const shared_ptr<Ty2>& _Right
   );

パラメーター

  • _Left
    非等値をテストするオブジェクトの 1 つがあります。

  • _Right
    非等値をテストするオブジェクトの 1 つがあります。

  • Ty1
    左辺の共有ポインターによって制御される型。

  • Ty2
    右辺の共有ポインターによって制御される型。

戻り値

オブジェクトがあるtrue ; オブジェクトが等しい false

解説

最初のテンプレートの演算子は false を返します。(すべての既定のアロケーターは同じです)。

2 番目と 3 番目のテンプレート演算子は !(_Left==_Right)を返します。

使用例

// memory_op_me.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <vector>

using namespace std;

int main( ) 
{
   allocator<double> Alloc;
   vector <char>:: allocator_type v1Alloc;

   if ( Alloc != v1Alloc )
      cout << "The allocator objects Alloc & v1Alloc not are equal."
           << endl;
   else
      cout << "The allocator objects Alloc & v1Alloc are equal."
           << endl;
}
  

 

// std_tr1__memory__operator_ne.cpp 
// compile with: /EHsc 
#include <memory> 
#include <iostream> 
 
int main() 
    { 
    std::shared_ptr<int> sp0(new int(0)); 
    std::shared_ptr<int> sp1(new int(0)); 
 
    std::cout << "sp0 != sp0 == " << std::boolalpha 
        << (sp0 != sp0) << std::endl; 
    std::cout << "sp0 != sp1 == " << std::boolalpha 
        << (sp0 != sp1) << std::endl; 
 
    return (0); 
    } 
 
  

必要条件

ヘッダー: <memory>

名前空間: std

参照

関連項目

auto_ptr クラス

shared_ptr クラス

unique_ptr クラス

その他の技術情報

auto_ptr のメンバー

shared_ptr::operator! =

unique_ptr のメンバー