为什么迭代器需要默认可构造
作者:sbi 提问时间:3/3/2015
正向、双向和随机访问类别的迭代器需要是默认可构造的。 为什么会这样,为什么输入和输出运算符不必是默认可构造的?...
语言-Lawyer 问答列表
作者:sbi 提问时间:3/3/2015
正向、双向和随机访问类别的迭代器需要是默认可构造的。 为什么会这样,为什么输入和输出运算符不必是默认可构造的?...
作者:Karolis Milieška 提问时间:9/6/2018
其中一些可能是重复的,但我对此感到抱歉。 假设我有这个:struct struct foo { int a; int b; int c; }; 1. 如果类型对象以具有自动存储持续时间...
作者:Jesse 提问时间:3/18/2022
在 ISO 标准 C 中,我的理解是,没有什么可以真正确定_Bool的表示,但它确实说: “_Bool 足够大,可以容纳值 0 和 1” “当任何标量值转换为 _Bool 时,如果该值比较等于 0,...
作者:xmh0511 提问时间:7/11/2022
[conv.fpint] p2 说 如果要转换的值在可以表示的值范围内,但该值不能准确表示,则它是实现定义的下一个较低或较高可表示值的选择。 [intro.abstract] p2 说 在本文档...
作者:Fedor 提问时间:11/21/2022
C++ 标准允许每个缺陷报告 1688 的变量,该问题已于 2013 年 9 月解决:constexpr volatile 该组合是有意允许的,在某些情况下可用于强制恒定初始化。 看起来意图是只允...
作者:303 提问时间:9/20/2023
考虑到下面的代码示例,我希望必须在此处使用关键字来指导编译器将变量视为模板。但是,MSVC 拒绝使用关键字,而 Clang 和 GCC 实际上需要它。在这种情况下,C++ 标准中的哪条特定规则强制或禁...
作者:Jan Schultke 提问时间:6/19/2023
我很好奇是否存在一种情况,它本身并不能充分消除歧义。 使用消歧器时,以下 qualified-id 必须是类型。 例如,在以下代码中:typenametypename template <typen...
作者:user541686 提问时间:10/1/2023
请考虑以下代码: #include <stdint.h> #include <string.h> #include <bit> union U { uint64_t ull; int32_t ...
作者:Jan Schultke 提问时间:9/23/2023
在 P2641r4: Checking a union alternative is active 中,作者提供了一个 的实现作为激励示例,并声称这是正确的格式。optional<bool> str...
作者:user16217248 提问时间:9/28/2023
在 C 中,如果我尝试通过未对齐的指针访问类型,可能会发生不好的事情: int x[2]; // Assuming CHAR_BIT == 8 && sizeof(int) == 4 *(int *...