当使用类内初始化程序时,为什么我可以使用初始化的副本形式"="和初始化的支撑列表形式"{}",但不能使用直接形式"()"。
class foo{
int a = 5;
int b{5};
int c(5);
};
错误:应为类型说明符
错误:语法错误:'constant'
我想它不会被解析为变量,但会被解析为函数的声明。这就是为什么它不让你在那里写5。因为它不需要任何参数或正常或默认类型的参数。由于error还表明它需要一个指定的类型,比如int或5的任何值。另一个错误表明,在函数中不能直接传递常量。这是一个语法错误。