问题标签 [c++-faq]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
41259 浏览

c++ - 编译器为类创建的所有成员函数是什么?这是否一直发生?

编译器为类创建的所有成员函数是什么?这是否一直发生?像析构函数。我关心的是它是否是为所有类创建的,为什么需要默认构造函数?

0 投票
2 回答
1697 浏览

c++ - 强制部分运营商成为会员的理由

C++ 中有 4 个运算符可以重载,但不能作为独立(也称为非成员、独立)函数重载。这些运算符是:

  • operator =
  • operator ()
  • operator ->
  • operator []

该线程很好地解释了禁止operator =成为非成员函数的理由。对其他三个有什么想法吗?

0 投票
1 回答
13980 浏览

c++ - C++ 标准有多少个版本?

在 C 中有 C89、C99 和 C11;C++呢?出道后有升级吗?

0 投票
1 回答
6518 浏览

c++ - 标准库和标准模板库有什么区别?

我不断看到对 C++ 标准库和 C++ 标准模板库 (STL) 的引用。它们之间有什么区别?维基百科提到他们共享一些标题,但仅此而已。

0 投票
8 回答
331242 浏览

c++ - 什么是三法则?

  • 复制对象是什么意思?
  • 什么是复制构造函数复制赋值运算符
  • 我什么时候需要自己申报?
  • 如何防止我的对象被复制?
0 投票
6 回答
55758 浏览

c++ - 什么是奇怪的重复模板模式(CRTP)?

在不参考一本书的情况下,任何人都可以CRTP通过代码示例提供一个很好的解释吗?

0 投票
5 回答
116455 浏览

c++ - 未定义的行为和序列点

什么是“序列点”?

未定义的行为和序列点之间的关系是什么?

我经常使用有趣而复杂的表达方式,例如a[++i] = i;,让自己感觉更好。为什么我要停止使用它们?

如果您已阅读本文,请务必访问后续问题Undefined behavior and sequence points reloaded

(注意:这是对Stack Overflow 的 C++ FAQ 的一个条目。如果您想批评以这种形式提供 FAQ 的想法,那么开始这一切的 meta 上的帖子就是这样做的地方。该问题在C++ 聊天室中进行监控,FAQ 想法最初是从那里开始的,因此您的答案很可能会被提出该想法的人阅读。)
0 投票
5 回答
109435 浏览

c++ - C++ 中 main 的正确声明是什么?

问题

  • mainC++中函数的正确签名是什么?

  • 什么是正确的返回类型,从 中返回值是什么意思main

  • 允许的参数类型是什么,它们的含义是什么?

  • 这是系统特定的吗?

  • 这些规则是否随着时间而改变?

  • 如果我违反它们会怎样?

0 投票
2 回答
3528 浏览

c++ - 临时工的寿命

以下代码工作正常,但为什么这是正确的代码?为什么 foo() 返回的临时的“c_str()”指针有效?我想,当输入 bar() 时,这个临时文件已经被破坏了——但它似乎不是这样的。所以,现在我假设 foo() 返回的临时值将在调用 bar() 后被销毁 - 这是正确的吗?为什么?

0 投票
3 回答
11578 浏览

c++ - 常见问题解答:为什么只有一个类至少有 1 个虚拟方法时 dynamic_cast 才有效?

这不能在 C++ 中编译: