gpt4 book ai didi

c++ - 如何将整数初始化为 "a = {1,}"编译?

转载 作者:IT老高 更新时间:2023-10-28 22:28:22 25 4
gpt4 key购买 nike

我发现了这个奇怪的语法:

int a = {1,};

它适用于我尝试过的所有编译器。它是如何编译的?

编辑:我认为标量初始值设定项中只能包含一个元素,这引发了我的问题。给您添麻烦了。

最佳答案

正如 Matt McNab 在评论中所说,大括号初始化列表的语法是相同的,无论您是使用它来初始化标量还是其他任何东西。

C++11 §5.17 状态

A braced-init-list may appear on the right-hand side of

  • an assignment to a scalar, in which case the initializer list shall have at most a single element.

braced-init-list 的定义是(来自 §8.5):

braced-init-list:  { initializer-list ,opt }  { }

“opt”表示结尾的逗号是可选的。

关于c++ - 如何将整数初始化为 "a = {1,}"编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27220074/

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