c++ - 了解单例模式中的操作重载

标签 c++ singleton operator-overloading

<分区>

我有一个名为 Serial 的类的头文件:serial.h

在这个头文件中,我有以下类型的操作重载:

private:
    ...
    Serial & operator = (const Serial &);

我知道这是单例模式的一部分,例如 here

我也是looked up运算重载,发现赋值运算符如下例子:

void operator=(const Distance &D )

但是“&”是什么意思,它是如何工作的?

最佳答案

运算符重载和&符号都与单例没有直接关系。 & 符号仅表示运算符采用引用而不是其他 Serial 的拷贝,并返回对 Serial 的引用(同样不是拷贝)。

在单例中这很重要,但您也可以(并且应该)在没有单例的情况下使用它。

关于c++ - 了解单例模式中的操作重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35747500/

相关文章:

java - 如何对内部类中的方法进行单元测试?

c++ - 如何为随机访问迭代器实现 "less than operator"?

c++ - 来自函数模板的显式模板特化不起作用

c++ - unicode "aware"std::getline

c++ - 模板类上的二元运算符重载

c++ - CPOI 和 CWaypoint

c++ - 在 C++ 中的 operator= 之后调用的析构函数

c++ - CUDA:填充列主矩阵

java - 如何将Retrofit onRespose() 调用的response.body() 数据保存在单例中

java - 重新加载单例值 Java