C++:{}的使用


今天在對fastrt代碼進行閱讀時,遇到類的實例化時后面沒有傳統的(),而是直接使用{} ,有時里邊有參數。搜索{}的使用搜到這篇文章,講述了{}的使用
參考文章鏈接:http://www.arthurcode.com/2019/09/16/c%E7%9A%84%E5%92%8C/

()用來表示函數調用,包括普通函數和構建函數,以及可以給內建類型初始化

int *p = new int[1000];
int *p = new int[1000](); // 內建類型圓括號初始化是語法,是標准
int *p = new int[1000]{}; // 

{} 提供列表初始化的功能,最終調用的是構造函數

Point{} // 調用的是Point::Point()構造函數
Point{x, y} // 嗲用的是Point::Point(x, y)構造函數

其他用法:
構造一個匿名的類直接使用Point{}即可,它調用構造函數,但是是臨時的,並沒有名字指向它,調用完之后再無法找到這個匿名類


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM