size_type max_size() const {
return static_cast<size_type>(-1) / sizeof(t);
}
void construct(pointer p, const value_type& x) {
new(p) value_type(x);
}
void destroy(pointer p) { p->~value_type(); }
private:
void operator=(const malloc_allocator&);
};
template<> class malloc_allocator<void>
{
typedef void value_type;
typedef void* pointer;
typedef const void* const_pointer;
template <class u>
struct rebind { typedef malloc_allocator<u> other; };
};
template <class t>
inline bool operator==(const malloc_allocator<t>&,
const malloc_allocator<t>&) {
return true;
}
template <class t>