operator new有如下可重載與不可重載形式
1:可重載 A*operator new(size_t t, int a, char b, str c){};//調用時調用new(a,b,c)A來return 指針;
2:placement new形式 A*p2= new(p) A(val) ;其中在p所指的原地,進行A::A(val)這樣的構造函數;不可重載;可以測得p調用前後地址不變,也==p2
對於new operator,無法重載,調用分爲3步:
a:調用malloc分配內存;//重載的實質是這裏被重載
b:調用placemet new;
c:return 相應指針;