|
初始值设定项可指定变量的初始值。 你可以在以下上下文中初始化变量:
在变量的定义中:
int i = 3;
Point p1{ 1, 2 };
作为函数的一个参数:
set_point(Point{ 5, 6 });
作为函数的返回值:
Point get_new_point(int x, int y) { return { x, y }; }
Point get_new_point(int x, int y) { return Point{ x, y }; }
初始值设定项可以采用以下形式:
括号中的表达式(表达式的逗号分隔列表):
Point p1(1, 2);
等号后跟表达式:
string s = "hello";
括号内的初始值设定项列表。 该列表可能为空,或可能包含一组列表,如下面的示例所示:
struct Point{
int x;
int y;
};
class PointConsumer{
public:
void set_point(Point p){};
void set_points(initializer_list<Point> my_list){};
};
int main() {
PointConsumer pc{};
pc.set_point({});
pc.set_point({ 3, 4 });
pc.set_points({ { 3, 4 }, { 5, 6 } });
}
|
|