最近我一直在浏览 facebooks folly library 的一些代码,看到一个名为
HTTPServer* const server_{nullptr};
作为班级成员。我以前从未见过这样的东西,想知道是否有什么特殊含义。谷歌搜索只是让我在 boost code to 中找到了像这样的其他示例。
也许有人有解释。
它用作初始化列表。在您的情况下,HTTPServer
指针将设置为,但即使是普通类型,例如,等nullptr
,您也可以使用大括号。int
float
它的作用是用里面的值初始化变量,这意味着下面两种态度的意思是一样的:
int x = 10;
int x{10};
您还可以以更简单的方式初始化数组:
int x[5] = { 1, 2, 3, 4, 5 };
而不是使用:
x[0] = 1;
x[1] = 2;
x[2] = 3;
x[3] = 4;
x[4] = 5;
如果你愿意,你也可以使用
int x{};
x
用 0 的值初始化。