new(__p) _Tp(__val);。。本人C++菜鸟一只,不明白,为什么能这么写??这里的new是采用new operator吧。那么(_P)是参数??后面的_TP(_val)是什么成分??
或许你可以把 (__p) _Tp 这个看成类 (__val) 这个是构造方法
这里的new不是operator new,是placement new。
(__p)是指针,指向构造出来的对象
_TP(_val)是构造函数,_TP是类名,_val是构造函数的参数。
可以看下C++ primer第十八章,说的很清楚