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