如果类具有 const 成员,则 move-assignment 运算符定义为已删除?
作者:Aqiu 提问时间:6/14/2021
它说“与 Copy-assignment 运算符一样,如果类具有 const 或 reference 成员,则 move-assignment 运算符被定义为已删除C++。 我写了一个演示,如下所示...
赋值运 问答列表
作者:Aqiu 提问时间:6/14/2021
它说“与 Copy-assignment 运算符一样,如果类具有 const 或 reference 成员,则 move-assignment 运算符被定义为已删除C++。 我写了一个演示,如下所示...
作者:Aganju 提问时间:7/20/2018
我遇到了一个令人讨厌的问题,编译器声称删除了一个,但它就在那里。经过几个小时的尝试,我产生了一个重现该问题的最小解决方案。我正在使用 MSVC 社区版 2017 15.7.5(截至今天的最新版本,20...
作者:nmd_07 提问时间:11/24/2018
为了包含条件数据成员,我使用专用模板而不是命名空间,然后在每个专用化中重载赋值运算符。在编译过程中,无法识别专用化的成员变量。我不明白为什么,在互联网上也找不到任何东西。 enum Def : in...
作者:Sideshow Bob 提问时间:3/23/2016
给定一个指向抽象基类的指针,我想复制或赋值它(作为基类)并调用派生的复制构造函数或赋值运算符。我知道复制构造函数不能是虚拟的,所以大概复制构造函数不是执行此操作的选项,但赋值运算符是。不过,它似乎不起...
作者:Emerson Xu 提问时间:9/26/2016
假设我们有一个基类和一个派生类: class Base { string s1; string s2; ... string s100; // Hundreds of members }; ...
作者:metablaster 提问时间:10/19/2019
我从中派生了一个自定义异常类std::runtime_error 静态分析器给我一个警告,如果我定义或删除默认操作(复制 ctors、复制/移动运算符、析构函数等),我应该定义或删除它们。 为了解...
作者:nuppigeller 提问时间:4/18/2020
我有一个基类 A 和两个派生类 B 和 C.B 定义 = 运算符,将基类 A 作为参数。 在类 B 上调用 = 时,有时会调用基类 A 的运算符,而不是 B 中的运算符。 class A { p...
作者:Vince 提问时间:8/26/2020
此代码编译并运行良好: #include <iostream> class Base { public: Base(int value) : clean_(true) { value_ ...
作者:Mark 提问时间:1/11/2019
struct my_struct { int p; uint32_t *a; ... }; struct my_struct *aa; ... struct b { uint8_t b;...
作者:kshitiz ghimire 提问时间:6/25/2021
*为什么在函数 char 上使用指针的相等运算符(检查器)对实际字符串没有影响 #define MAXLINE 20 char strings[MAXLINE]; char nl[]= "\n"...