为什么在声明移动操作时删除复制操作?
作者:KnowItAllWannabe 提问时间:8/14/2014
当类显式声明复制操作(即复制构造函数或复制赋值运算符)时,不会为该类声明移动操作。但是,当类显式声明移动操作时,复制操作将声明为已删除。为什么存在这种不对称性?为什么不直接指定如果声明了移动操作,则不...
11 问答列表
作者:KnowItAllWannabe 提问时间:8/14/2014
当类显式声明复制操作(即复制构造函数或复制赋值运算符)时,不会为该类声明移动操作。但是,当类显式声明移动操作时,复制操作将声明为已删除。为什么存在这种不对称性?为什么不直接指定如果声明了移动操作,则不...
作者:Igor Polk 提问时间:10/5/2023
每个键都有哈希值。获取这些哈希值的方法是什么?std::unordered_map 为什么?评估哈希函数与数据集的相关性。我可以从外部生成哈希值,但我可能无法访问所使用的哈希函数。...
作者:Basilevs 提问时间:8/5/2010
这是什么? 它有什么作用? 什么时候应该使用? 良好的链接是值得赞赏的。...
作者:emesx 提问时间:10/27/2012
假设我们有这个类: class X { public: explicit X (char* c) { cout<<"ctor"<<endl; init(c); }; X (X& lv) { co...
作者:bobah 提问时间:11/23/2016
中缺少透明()有原因吗?template <class K> at(K&& key);std::map...
作者:Aleksey 提问时间:3/9/2014
我在通过引用std::string传递到dll中的函数时遇到了问题。 这是函数调用: CAFC AFCArchive; std::string sSSS = std::string("data\...
作者:Maelkum 提问时间:1/24/2016
我在 GCC 中为 C++11 引入的新 ABI 遇到了问题。升级到 GCC 5.3 后,我的项目不再编译。我收到的错误消息很简单: undefined reference to `tokenize...
作者:Barnett 提问时间:6/11/2017
我知道 NRVO 允许函数构造一个对象并按值返回该对象,而无需复制甚至移动操作的成本。它发现它也适用于嵌套函数调用,允许您从另一个函数调用的返回值构造对象。 请考虑以下程序及其输出,如注释中所示: ...
作者:fredoverflow 提问时间:1/26/2013
这个问题在这里已经有答案了: 10年前关闭。 可能的重复项: c++0x 中的递归 lambda 函数 这是一个普通的旧递归函数: int fak(int n) { return (n <= ...
作者:alveko 提问时间:10/7/2013
我想运行相同类型的任务(工作线程),但一次不超过一定数量的任务。当任务完成时,其结果是新任务的输入,然后可以启动该任务。 有什么好的方法可以在 C++11 中使用异步/未来范式实现这一点吗? 乍一...