gpt4 book ai didi

c++ - {} vs. () 类成员的初始化

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:13:49 24 4
gpt4 key购买 nike

<分区>

我不明白为什么下面的代码可以编译?

struct A{ A(int); }; struct B{ A a{1}; };

但这不是:

struct A{ A(int); }; struct B{ A a(1); };

错误:数字常量前需要“,”或“...”

编译器不接受第二种形式有什么原因吗?我知道最令人烦恼的解析歧义,但我认为这个问题是相关的。

编辑:正如 Bo 在下面的评论中所解释的那样,我错了。毕竟这个问题与令人烦恼的解析有关。

我在 gcc-5.1.0 上用 --std=c++11 试过这个

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com