C 11 中的指定初始化器:排除的基本原理
虽然 C99 允许使用指定初始化器列表,例如在提供的代码片段中,C 11 禁止此功能。 C 11 标准委员会的这一决定提出了为什么如此方便的功能被排除的问题。
C.1.7[diff.decl].4:C 中的限制 :
在 C 中引入指定初始化器会带来几个问题挑战:
结论:
C 11 标准委员会在选择排除指定的初始值设定项列表时,仔细考虑了这些技术限制,以及潜在的兼容性问题和不一致的行为。相反,C 为初始值设定项列表提供了严格的评估顺序,以确保可预测的行为并保持与其现有规则的兼容性。
以上是为什么指定初始化器被排除在 C 11 之外?的详细内容。更多信息请关注PHP中文网其他相关文章!