问题标签 [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.
c++ - 如何重载 std::swap()
std::swap()
在排序甚至赋值期间被许多 std 容器(例如std::list
and )使用。std::vector
但是 std 的实现swap()
非常通用,对于自定义类型来说效率很低。
因此,可以通过重载std::swap()
自定义类型特定的实现来获得效率。但是如何实现它以便 std 容器使用它呢?
c++ - C++中的指针变量和引用变量有什么区别?
我知道引用是语法糖,所以代码更容易读写。
但是指针变量和引用变量有什么区别呢?
c++ - 为什么会存在易失性?
关键字有什么作用volatile
?在 C++ 中它解决了什么问题?
就我而言,我从来没有故意需要它。
c++ - 在哪里可以找到当前的 C 或 C++ 标准文档?
对于许多问题,答案似乎可以在“标准”中找到。但是,我们在哪里可以找到呢?最好是在线的。
谷歌搜索有时会让人感到徒劳,尤其是对于 C 标准,因为它们被编程论坛上的大量讨论淹没了。
为了开始这个,因为这些是我现在正在搜索的,哪里有好的在线资源:
- C89
- C99
- C11
- C++98
- C++03
- C++11
- C++14
- C++17
c++ - C ++中的结构和类有什么区别?
已经在 C#/.Net 的上下文中提出了这个问题。
现在我想了解 C++ 中结构和类之间的区别。请讨论技术差异以及在 OO 设计中选择其中一种的原因。
我将从一个明显的区别开始:
- 如果不指定
public:
orprivate:
,则结构的成员默认是公共的;默认情况下,类的成员是私有的。
我确信在 C++ 规范的晦涩角落中还可以找到其他差异。
c++ - 什么是智能指针,我应该什么时候使用它?
什么是智能指针,我应该什么时候使用它?
c++ - 为什么将 std::auto_ptr<> 与标准容器一起使用是错误的?
为什么使用std::auto_ptr<>
标准容器是错误的?
c++ - 为什么结构的 sizeof 不等于每个成员的 sizeof 之和?
为什么sizeof
运算符返回的结构大小大于结构成员的总大小?
c++ - 显式关键字是什么意思?
explicit
C++中的关键字是什么意思?
c++ - 如何删除类似的 const 和非常量成员函数之间的代码重复?
假设我有以下class X
要返回对内部成员的访问权限的地方:
这两个成员函数在大括号X::Z()
内X::Z() const
具有相同的代码。这是重复的代码,可能会导致逻辑复杂的长函数出现维护问题。
有没有办法避免这种代码重复?