{} or () ——变量初始化


C++中,变量的初始化,有{}()两种,但应该尽量用{},而非()。因为使用()可能和函数声明相混淆,如

1 bool isTrue();  // 返回值为bool类型,形参为空的函数的声明;
2 bool isTrue{};

并且,类的成员函数在声明同时初始化时,必须用{},否则编译错误:

1 bool isTrue(false); //编译错误
3 bool isTrue(); //编译成功,但是声明了一个函数
5 bool isTure{false};

深入了解C++(8): 别再徘徊于{}与()之间了,来学习正确用法 (qq.com)