1. C++中new的用法
C++中new運算符用於動態分配和撤銷內存的運算符。
1、開辟單變數地址空間
new int; //開辟一個存放數組的存儲空間,返回一個指向該存儲空間的地址.int *a = new int 即為將一個int類型的地址賦值給整型指針a. 2)int *a = new int(5) 作用同上,但是同時將整數賦值為5。
2、開辟數組空間
要訪問new所開辟的結構體空間,無法直接通過變數名進行,只能通過賦值的指針進行訪問。用new可以動態開辟,撤銷地址空間。在編程序時,若用完一個變數,下次需要再用,可以在每次開始使用時開辟一個空間,在用完後撤銷它。
(1)new的使用方法擴展閱讀:
C++中使用new的注意事項:
1、用戶是無法主動調用構造函數的,所以需要藉助placement new,但是用戶可以主動調用析構函數,所以用完這些對象後,調用析構函數,然後用對應分配內存的方法去釋放內存。
2、事實上malloc並不一定比operatornew節省多少時間,用placement new常常是為了考慮性能,所以會配合內存池一起使用。
參考資料來源:網路:定位放置new