Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
内联变量如何工作?
在 2016 年奥卢 ISO C 标准会议上 一项名为内联变量被标准委员会投票纳入C 17 通俗地说 什么是内联变量 它们如何工作以及它们有什么用 内联变量应该如何声明 定义和使用 提案第一句话 The inline说明符可以应用于变量以及
c
C17
inlinevariable
std::launder 如何影响容器?
考虑以下固定大小向量的简化且不完整的实现 template
c
undefinedbehavior
C17
是否允许复制/移动省略来使使用已删除函数的程序格式良好?
考虑以下代码 include
c
constructor
C17
copyelision
C++17 之前的函数交错
看看这个简单的函数调用 f a b 根据标准 调用顺序为a and b 未指定 C 17 有附加规则不允许a and b 交错 据我所知 在C 17之前 没有这样的规则 现在 看看这个简单的代码 int v 0 int fn int t v
c
C11
c14
languagelawyer
C17
何时将 node_type 与 std::map::insert 一起使用?
我已经习惯了现有的界面std map 插入元素返回一个 bool 描述成功插入 以及迭代器关于插入元素的位置 template lt class P gt std pair
c
STL
Iterator
containers
C17
保证复制省略的行为是否取决于用户定义的复制构造函数的存在?
无论有或没有用户定义的复制构造函数 以下代码的行为都不同在 GCC 8 0 1 下 include
c
languagelawyer
C17
copyelision
gcc8
类定义之外不允许覆盖
我创建了一个抽象类和一个具体子类 bca h include
c
C17
为什么不允许 auto 作为函数参数?
From 这个问题 很清楚auto不能用作函数参数 我的问题是为什么返回类型被允许为auto但函数参数不是 auto function auto data DOES something Since there有很多好处auto进来c 1z
c
C17
具有未使用的引用参数的 constexpr 函数 – gcc 与 clang
考虑以下代码 template
c
templates
languagelawyer
C17
constexpr
为什么不能声明嵌套类类型的内联静态数据成员?
struct sa struct sb int a 123 inline static sb b 上面的代码会产生一个错误 main cpp 25 20 error default member initializer for sa sb
c
static
C17
staticmembers
inlinevariable
为什么“if constexpr”的错误分支会被编译?
为什么这段代码在编译时会出错 我的知识 还有this of if constexpr 说else块不应该被编译 if constexpr true int a 10 else int b 10 错误是 error expected or b
c
C17
constexpr
ifconstexpr
是否可以使用结构化绑定来分配类成员?
我想使用 C 17 结构化绑定为类成员变量赋值 如下所示 include
c
C17
使用参数包将 lambda 转换为 std::function
SO 有几个问题与将 lambda 转换为std functions 但我还没有看到使用参数包作为参数列表的 这在我的 g 版本 7 1 1 4 上似乎被破坏了 并且可能只是不受支持 那么这是合法的 c 17 按照标准 吗 如果没有 为什么
c
Lambda
variadictemplates
C17
“if constexpr”在模板之外有用吗?
我试图理解if constexpr fully 我明白了 如果if constexpr expr 在模板中使用 以及expr依赖于模板参数 那么在实例化期间 只有其中之一then else分支将被实例化 其他分支将被丢弃 我有两个问题 是真
c
C17
constexpr
ifconstexpr
templateinstantiation
使用未扩展的参数包作为模板模板参数的非类型模板参数的类型是否合法? [复制]
这个问题在这里已经有答案了 gcc 和 clang 对于以下代码是否应该编译存在分歧 template
c
C17
languagelawyer
variadictemplates
templateargumentdeduction
constexpr 和 std::cout 适用于函数,但不适用于 lambda
Why constexpr不适用于std cout 但适用于printf include
c
C17
constexpr
cout
具有更多模板参数的部分专业化
部分特化是否允许拥有比主模板更多的模板参数 我的理解是 部分特化必须具有与主模板更少或相同数量的模板参数 我正在阅读 C 模板 第 2 版 其中第 5 4 节 第 72 页 提到 template
c
C11
c14
C17
C++1z 范围的状态? [关闭]
Closed 这个问题不符合堆栈溢出指南 目前不接受答案 C 委员会中有一个关于范围的研究小组 但我没有关注这个研究组的历史 并且我不确定 C 1z 预计会提供什么样的交付 而且我不使用 boost range 所以我对现有实践没有清晰的看
c
C11
range
standards
C17
如何使参数推导适用于使用基类构造函数的派生类?
当派生类使用基类构造函数时 推论似乎总是fail 然而 当基类有很多构造函数时 重新定义所有构造函数是非常笨拙的 当基类快速演变为新的构造函数时 这也是一个痛苦 老问题是两年多前提出的 所以我想知道 在 2020 年 c 17 和 c 2a
c
C17
C20
c23
成员初始化列表:从返回元组的函数初始化两个成员
可以在中初始化多个成员吗成员初始值设定项列表从函数获得的元组 随着通过元组返回多个值变得越来越流行 我希望有一个解决方案 除了语言限制之外 我认为没有其他原因可以解释为什么这是不可能的 这是我所拥有的 mcve auto new foo s
c
tuples
c14
C17
initializationlist
«
1 ...
15
16
17
18
19
20
21
»