allocator::allocator
생성자를 할당자 개체를 만드는 데 사용 합니다.
allocator( );
allocator(
const allocator<Type>& _Right
);
template<class Other>
allocator(
const allocator<Other>& _Right
);
매개 변수
- _Right
복사 할당자 개체입니다.
설명
생성자는 아무 작업도 하지 않습니다.그러나 일반적으로 할당자 다른 할당자 개체에서 생성 된 개체에 같지 고 해야 개체 할당의 혼합과 고 두 할당자 객체 간의 허용.
예제
// allocator_allocator.cpp
// compile with: /EHsc
#include <memory>
#include <iostream>
#include <vector>
using namespace std;
class Int {
public:
Int( int i )
{
cout << "Constructing " << ( void* )this << endl;
x = i;
bIsConstructed = true;
};
~Int( )
{
cout << "Destructing " << ( void* )this << endl;
bIsConstructed = false;
};
Int &operator++( )
{
x++;
return *this;
};
int x;
private:
bool bIsConstructed;
};
int main( )
{
allocator<double> Alloc;
vector <Int>:: allocator_type v1Alloc;
allocator<double> cAlloc(Alloc);
allocator<Int> cv1Alloc(v1Alloc);
if ( cv1Alloc == v1Alloc )
cout << "The allocator objects cv1Alloc & v1Alloc are equal."
<< endl;
else
cout << "The allocator objects cv1Alloc & v1Alloc are not equal."
<< endl;
if ( cAlloc == Alloc )
cout << "The allocator objects cAlloc & Alloc are equal."
<< endl;
else
cout << "The allocator objects cAlloc & Alloc are not equal."
<< endl;
}
요구 사항
헤더: <memory>
네임 스페이스: std