gcc- std:: list. :
struct _List_impl : public _Node_Alloc_type { ... };
_List_impl _M_impl;
-:
typedef _Alloc allocator_type;
allocator_type
get_allocator() const
{ return allocator_type(*static_cast<const _Node_Alloc_type*>(&this->_M_impl)); }
(1)
node _Tp , , _Tp, node, _Tp (a _List_node<_Tp>).
, std:: list _List_node<_Tp>, _Tp. typedef: U T.
, _Alloc<_List_node<_Tp> > _Alloc<_Tp>.
(2) :
, _Alloc _Node_Alloc_type ++; static_cast , .