C++中大括號的用法合集
學習C++以來還沒有總結過C++的大括號的使用方式,于是有此文記錄一下。
方法一:定義代碼塊
最常用的方式之一,不做解釋:
if (condition) {
// 代碼塊
} else {
// 另一個代碼塊
}
方式二:作用域控制
像下面的這樣的代碼就不能夠執(zhí)行,因為a這個變量作用域不足以讓 cout 訪問。
{
int a = 10;
}
cout << a << endl;
return 0;
方式三:類與結構體的定義
這個方式也很常見,不多做解釋。
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 引入了大括號初始化(也稱為統一初始化),可以用來初始化變量、數組、容器等。
簡單變量初始化
int x{10};
double y{3.14};
數組初始化
int arr[3] = {1, 2, 3};
容器初始化
std::vector<int> vec = {1, 2, 3, 4};
統一初始化方式可以避免窄化轉換問題,提高代碼的安全性。
值得一提的是,著名的宇宙構造表達式也是這樣原理。
方式五:構造函數委托
class Example {
int a;
public:
Example(int x) : a{x} {}
};
方式六:內聯對象定義
struct Point {
int x, y;
};
Point p = {10, 20}; // 使用大括號直接初始化
對于匿名對象或臨時對象,這種寫法簡潔明了。
方式七:lambda 表達式的函數體
auto lambda = []() {
return 42;
};
方式八:內聯命名空間
大括號用于定義命名空間的范圍。
namespace MyNamespace {
inline namespace v1 {
void func() {}
}
}
目前就這些,如有新的心得則繼續(xù)補充。
到此這篇關于C++中大括號的用法合集的文章就介紹到這了,更多相關C++大括號內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
MongoDB?C?驅動程序安裝(libmongoc)?和?BSON?庫(libbson)方法
這篇文章主要介紹了安裝?MongoDB?C?驅動程序?(libmongoc)?和?BSON?庫?(libbson),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-09-09

