C++中大括號(hào)的用法合集
學(xué)習(xí)C++以來還沒有總結(jié)過C++的大括號(hào)的使用方式,于是有此文記錄一下。
方法一:定義代碼塊
最常用的方式之一,不做解釋:
if (condition) {
// 代碼塊
} else {
// 另一個(gè)代碼塊
}
方式二:作用域控制
像下面的這樣的代碼就不能夠執(zhí)行,因?yàn)閍這個(gè)變量作用域不足以讓 cout 訪問。
{
int a = 10;
}
cout << a << endl;
return 0;
方式三:類與結(jié)構(gòu)體的定義
這個(gè)方式也很常見,不多做解釋。
struct Point {
int x;
int y;
};
class Rectangle {
int width, height;
public:
Rectangle(int w, int h) : width(w), height(h) {}
int area() { return width * height; }
};
方式四:初始化列表
在 C++11 引入了大括號(hào)初始化(也稱為統(tǒng)一初始化),可以用來初始化變量、數(shù)組、容器等。
簡(jiǎn)單變量初始化
int x{10};
double y{3.14};
數(shù)組初始化
int arr[3] = {1, 2, 3};
容器初始化
std::vector<int> vec = {1, 2, 3, 4};
統(tǒng)一初始化方式可以避免窄化轉(zhuǎn)換問題,提高代碼的安全性。
值得一提的是,著名的宇宙構(gòu)造表達(dá)式也是這樣原理。
方式五:構(gòu)造函數(shù)委托
class Example {
int a;
public:
Example(int x) : a{x} {}
};
方式六:內(nèi)聯(lián)對(duì)象定義
struct Point {
int x, y;
};
Point p = {10, 20}; // 使用大括號(hào)直接初始化
對(duì)于匿名對(duì)象或臨時(shí)對(duì)象,這種寫法簡(jiǎn)潔明了。
方式七:lambda 表達(dá)式的函數(shù)體
auto lambda = []() {
return 42;
};
方式八:內(nèi)聯(lián)命名空間
大括號(hào)用于定義命名空間的范圍。
namespace MyNamespace {
inline namespace v1 {
void func() {}
}
}
目前就這些,如有新的心得則繼續(xù)補(bǔ)充。
到此這篇關(guān)于C++中大括號(hào)的用法合集的文章就介紹到這了,更多相關(guān)C++大括號(hào)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MongoDB?C?驅(qū)動(dòng)程序安裝(libmongoc)?和?BSON?庫(kù)(libbson)方法
這篇文章主要介紹了安裝?MongoDB?C?驅(qū)動(dòng)程序?(libmongoc)?和?BSON?庫(kù)?(libbson),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-09-09
C語(yǔ)言實(shí)現(xiàn)打印楊輝三角的方法詳細(xì)(三種方法)
楊輝三角是中國(guó)古代數(shù)學(xué)的杰出研究成果之一,它把二項(xiàng)式系數(shù)圖形化,把組合數(shù)內(nèi)在的一些代數(shù)性質(zhì)直觀地從圖形中體現(xiàn)出來,是一種離散型的數(shù)與形的結(jié)合。本文將介紹三種可以實(shí)現(xiàn)打印楊輝三角的辦法,感興趣的可以試一試2022-01-01
C++關(guān)于構(gòu)造函數(shù)可向父類或者本類傳參的講解
今天小編就為大家分享一篇關(guān)于C++關(guān)于構(gòu)造函數(shù)可向父類或者本類傳參的講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2018-12-12
Cocos2d-x中實(shí)現(xiàn)彈出對(duì)話框示例
這篇文章主要介紹了Cocos2d-x中實(shí)現(xiàn)彈出對(duì)話框示例,注意本文代碼中的注釋,本文同時(shí)給出了效果圖,需要的朋友可以參考下2014-09-09

