C++ 杂项
大括弧 {}
在C++中,大括号 {} 可以用于多种目的,包括但不限于以下几种:
-
初始化列表:大括号可以用于初始化数组、结构体、类和标准库容器等数据结构。例如:
int arr[] = {1, 2, 3, 4, 5}; // 初始化整型数组 std::vector<int> vec = {1, 2, 3, 4, 5}; // 初始化整型向量
-
代码块:大括号可以用于定义代码块,其中的语句可以被视为一个独立的作用域。例如:
{ int x = 5; // 这里是一个新的作用域 { int y = 10; // 这里是另一个新的作用域 } // y 在这里不可见 }
-
初始化对象:大括号可以用于初始化对象,这在某些情况下比传统的括号初始化更加灵活。例如:
class Example { public: int a; int b; Example(int x, int y) : a(x), b(y) {} }; Example obj1{1, 2}; // 使用大括号初始化对象 Example obj2 = {3, 4}; // 也可以使用等号
-
初始化列表构造函数:大括号可以用于调用初始化列表构造函数,这在C++11中引入,用于支持初始化列表的语法。例如:
class Example { public: int a; int b; Example(std::initializer_list<int> list) { auto it = list.begin(); a = *it; ++it; b = *it; } }; Example obj = {5, 6}; // 调用初始化列表构造函数