赋值运算符的参数必须是引用吗?

2024-04-19

C++中重载类的赋值运算符时,其参数必须是引用吗?

例如,

class MyClass {
public:
...
MyClass & operator=(const MyClass &rhs);
...
}

是真的吗

class MyClass {
public:
...
MyClass & operator=(const MyClass rhs);
...
}

?

Thanks!


重载赋值运算符的参数可以是任何类型,并且可以通过引用或按值传递(当然,如果该类型不可复制构造,那么显然它不能按值传递)。

因此,例如,您可以有一个赋值运算符,它接受int作为参数:

MyClass& operator=(int);

复制赋值运算符是赋值运算符的特例。它是任何采用与类相同类型的赋值运算符,无论是通过值还是通过引用(引用可以是 const 或 volatile 限定的)。

如果您没有显式实现某种形式的复制赋值运算符,则编译器会隐式声明和实现该运算符。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

赋值运算符的参数必须是引用吗? 的相关文章

  • C++ 中的类 C# 事件,组合

    在过去的几个月里 我经常使用 C 并习惯了事件和委托 在类中使用组合非常容易 只需使用事件从组件获取消息 现在我正在尝试在 C 中做类似的事情 但不知道如何做 C 中的组合是如何完成的 我想到的唯一方法是继承 您从类派生并重写其函数以接收来
  • 如何在 .net 中为 Google 云存储签名 url

    我想知道如何使用 net中的谷歌云存储类生成signurl 我已经根据要求创建了字符串 GET 1388534400 bucket objectname 但我现在想用 p12 密钥签署这个 url 然后想让它变得 url 友好 该库没有显示
  • 退回 10 天后结束的拍卖

    我的 api xml 对于从当前到 10 天结束的返回拍卖工作正常 但对于 10 天后结束的列表不起作用 这是我下载结果的方式 public string DownLoad string url used to build entire i
  • Windows Phone 8.1 中的 RadialGradientBrush?

    请告诉我如何在 Windows Phone 8 1 应用程序中创建 RadialGradientBrush 我试图在这里找到它 但没有这样的刷子 Windows UI Xaml Media 有任何想法吗 谢谢你 如果您不介意从 NuGet
  • 实体框架迁移 - 启用自动迁移以及添加的迁移

    我在我的项目中使用实体框架 4 3 迁移 我想使用自动迁移 以便当我对域对象和上下文类进行修改时 我的数据库会在运行项目时自动更新 到目前为止我已经完成了这个工作 除了自动迁移之外 我还想使用一些添加的迁移 并且我希望应用程序在运行应用程序
  • 无法在 web.config 中为 WCF Web 服务设置服务名称属性

    我编写了一个运行良好的 WCF Web 服务 然后我从另一个应用程序复制了该 Web 服务的内容 并创建了一个新的 WCF 文件 该文件在 web config 中创建了一个新文件 但名称属性显示找不到命名空间 以下是我的 WCF 前几行的
  • 如何有效地合并两个 BST?

    如何合并两个二叉搜索树并保持BST的性质 如果我们决定从树中取出每个元素并将其插入到另一个元素中 则此方法的复杂度将为O n1 log n2 where n1是树的节点数 比如T1 我们已经拆分了 并且n2是另一棵树的节点数 比如T2 执行
  • 如何找到给定数组的所有可能的子集?

    我想在 C 或 C 中提取数组的所有可能子集 然后计算所有子集数组各自元素的总和 以检查其中有多少等于给定数字 我正在寻找的是算法 我确实理解这里的逻辑 但我现在还无法实现这一逻辑 考虑一组S of N元素 以及给定的子集 每个元素要么属于
  • 为什么允许 C++ 编译器优化具有副作用的内存分配?

    另一个问题讨论优化器删除调用的合法性new 编译器是否允许优化堆内存分配 https stackoverflow com questions 31873616 is the compiler allowed to optimize out
  • 为什么宇宙飞船与盒子对撞机相撞后不再回头?

    我希望当发生碰撞时将宇宙飞船转回来 但他们继续前进 开箱即用的对撞机和地形 使克隆船在碰撞时我想返回的脚本 using System using UnityEngine using Random UnityEngine Random usi
  • C# 单元测试:测试使用 MapPath 的方法

    首先 我知道这个问题非常接近 如何在 C 单元测试中映射路径 https stackoverflow com questions 1231860 how to mappath in a unit test in c 但我希望它有不同的解决方
  • 通过引用捕获 std::Exception?

    我有一个愚蠢的问题 我读过这篇关于 std exception 的文章http www cplusplus com doc tutorial exceptions http www cplusplus com doc tutorial ex
  • Random 并行生成数字 1 的次数超过 90% [重复]

    这个问题在这里已经有答案了 考虑以下程序 public class Program private static Random rnd new Random private static readonly int ITERATIONS 50
  • 从另一个类访问和设置一个类中的变量

    我有一个 shopping cart aspx cs 文件 还有一个类文件 spcart cs 购物车 aspx cs public partial class Ui ShoppingCart System Web UI Page publ
  • 关闭/清理“混合”文件描述符/套接字

    当我使用accept 创建一个套接字并使用fdopen 从中创建一个文件时 我需要做什么来清理所有内容 我是否需要对 FILE 执行 fclose 对套接字执行 shutdown 和 close 还是只需要 shutdown 和 或 clo
  • 有没有一种方法可以通过数据注释来验证一个日期属性大于或等于另一个日期属性?

    我有一个StartDate and EndDate on my SchoolEvents模型和我想知道是否有任何数据注释可以用来验证StartDate小于或等于EndDate并且那EndDate大于或等于StartDate 从我的角度来看
  • C# 计算 int 数组中值的平均值

    当我尝试打印 int 数组中的值的平均值时 它会打印出与我有值一样多的完全不同的东西 这是什么问题 int numbers numbers new int 5 Console WriteLine give five integer numb
  • 我可以让 C++ 编译器在编译时实例化对象吗?

    我正在编写一些代码 其中包含大量相当简单的对象 我希望它们在编译时创建 我认为编译器能够做到这一点 但我无法弄清楚如何做到 In C我可以执行以下操作 include
  • 从 Unity WebGL 调用 Angular2 函数

    目前 我正在使用 Angular2 版本 2 1 2 和 Unity 可视化工具 使用 Unity 5 5 构建 我需要做的是从 Unity 到 Angular2 进行通信 我正在使用类似于下面的代码 public void GetBill
  • 类和结构在填充和继承方面的区别

    以下所有操作都将在 GCC 9 1 上使用编译器资源管理器 https github com mattgodbolt compiler explorer 在 x86 64 中 使用 O3 我有这个代码 struct Base Base do

随机推荐

  • 如何在 igraph R 中创建自循环?

    如何添加self loop除了改变之外的图表Adjacency matrix这正在改变c i i 1 有没有一个函数可以做到这一点igraph R包裹 Edit 图形创建 network read csv file choose netwo
  • pyaudio 可以同时演奏两个音符吗?

    可以使用 pyaudio 演奏和弦吗 当然 只需生成结果并将其传递给玩家即可 本文介绍了一种实现此目的的方法 http davywybiral blogspot com br 2010 09 procedural music with py
  • FMDB ios 没有这个表

    我正在做的 sqlite 项目有问题 我正在使用 FMDB 我遵循一个简单的示例 但不起作用 而且我找不到错误 我从终端创建了数据库模式 并在上面放置了一些数据 我对 ios 开发非常陌生 所以我不知道我是否正确执行了这些步骤 这就是我所做
  • Tkinter - 窗口焦点丢失事件

    是否有事件触发tkinter窗口失去可以绑定到的焦点tkinter窗口使用 bind method 您正在寻找的活动是
  • r 中的循环问题: if (length[i] == 1) { 中的错误:缺少 TRUE/FALSE 需要的值

    ann lt 1 2500 len lt sample 1 3 1000 replace TRUE df lt data frame col1 c 1 2500 col2 c 1 2500 for i in 1 length ann if
  • 运行包含 Pipes 的命令行并将结果显示到 STDOUT

    如何从 Python 调用包含管道的 shell 命令并捕获输出 假设命令类似于 cat file log tail 1 我想做的 Perl 等效项是这样的 my string cat file log tail 1 使用 subproce
  • 构建 nspredicate 时的 EXC_BAD_ACCESS

    我正在计算生日和今天之间的月数 利用这个数字 我正在构建一个谓词来从核心数据中获取对象 尽管月数计算正确 如日志所示 但在构建谓词时我得到了 EXC BAD ACCESS 这是我的代码 NSCalendar gregorian NSCale
  • 隐藏网站文件夹/目录文件的最佳方法是什么[重复]

    这个问题在这里已经有答案了 如果我通过 www mysite com img 访问我的网站 我会看到以下内容 父目录 folder1 folder2 file1 file2 等等等等 但什么是best如何阻止人们访问我的网站文件夹和文件结构
  • 处理负整数的汇编 MASM

    我被指示用汇编语言编写一个程序 该程序将执行以下算术 A B C D A E 当没有负值发挥作用时 我成功地做到了这一点 但假设 A 5 B 4 C 3 D 2 和 E 1 这给了我们 5 4 3 2 5 1 或 6 这就是我需要帮助的地方
  • 通过@PersitenceContext或@PersitenceUnit注入EntityManagerFactory?

    我一直认为 PersistenceContext用于将EntityManager注入到容器管理的应用程序中 而 PersistenceUnit用于注入EntityManagerFactory Javadoc 说 对于持久性单元 http d
  • 适用于 mac 的免费 c++ 编译器不使用 xcode

    有没有适用于 Mac 且不需要 xcode 的免费 C 编译器 如果您安装了开发人员工具 包括 Xcode 那么您也会安装 GCC 您可以从命令行使用它 gcc o myprogram main cpp
  • 更快的循环:foreach 与 some(jsperf 的性能与 Node 或 chrome 不同)

    将数组的值恢复为简单的最佳方法是什么true or false values 我很困惑 因为 jsperf 给了我VERY与 google chrome 控制台 nodejs 或任何其他 JS 引擎给我的结果不同 jsperf 片段在这里
  • Keycloak 20.0.2:我在用户角色映射中没有看到领域角色

    当我在我的领域中创建用户并单击 角色映射 选项卡时 根据我看到的每个 SO 帖子 应该有一种方法来选择要应用的领域角色 但就我而言 我没有看到他们 This is what I see 我正在尝试添加manage users角色 因此我可以
  • 升级数据库

    我已经在谷歌商店中有一个应用程序 我正在使用一个有 3 个表的内置数据库 并在第一次启动应用程序时复制它 现在我想升级应用程序并添加另一个表 下面是我的代码 public DataBaseHelper Context context sup
  • 导入错误:没有名为 psycopg2 的模块

    在 OpenERP 6 的安装过程中 我想使用以下命令生成一个配置文件 cd home openerp openerp server bin openerp server py s stop after init c home opener
  • windows下如何设置keytool的密码?

    我正在为 android 应用程序开发的 my hello mapview 程序添加 google maps api 参考网站 http developer android com guide tutorials views hello m
  • 我需要处置 SemaphoreSlim 吗?

    根据文档 a SemaphoreSlim不使用 Windows 内核信号量 是否有任何特殊资源被使用SemaphoreSlim这使得打电话很重要Dispose当 的时候SemaphoreSlim将不再使用 如果您访问AvailableWai
  • Java中如何正确计算字符串的长度?

    我知道有String length以及其中的各种方法Character它或多或少适用于代码单元 代码点 Java 中实际返回 Unicode 标准指定的结果的建议方法是什么 UAX 29 http www unicode org repor
  • 保持 UI 响应的 Thread.Sleep 替代方案?

    我在 Visual Studio 2008 中使用 C 完成所有这些工作 我想放慢算法的工作速度 以便用户可以观看它的工作 GUI 上有可见的周期性变化 所以我添加了Thread Sleep每次实例之后 问题是Thread Sleep 当设
  • 赋值运算符的参数必须是引用吗?

    C 中重载类的赋值运算符时 其参数必须是引用吗 例如 class MyClass public MyClass operator const MyClass rhs 是真的吗 class MyClass public MyClass ope