只能说这里确实存在一些二义性

在godbolt上试了一下,gcc14和clang19的报错就很明确:与函数声明混淆,然后推荐你把圆括号换成花括号

代码链接:
https://godbolt.org/z/c1hE8vsda用花括号代替圆括号进行变量初始化确实是个好习惯,但是话又说回来,构造函数里有参数是初始化列表的重载又会产生新的混淆,最典型的例子就是std::vector<int>{3, 1}和std::vector<int>(3, 1),前者构造的vector包含{3, 1}两个元素,后者则是{1, 1, 1}三个元素
很讨厌,但没啥好办法,只能踩过坑了以后自己多注意一点
