C语言中如何实现赋值操作符的重载,以创建自定义赋值行为?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1501个文字,预计阅读时间需要7分钟。
1. 赋值操作符重载的原因 + 赋值操作符是使用频率最高的操作之一,通常情况下,其意义明确,即把两个同类型的变量的值从一端(右侧)传递到另一端(左侧)。然而,在以下两种情况下:
1.赋值操作符重载的原因
赋值操作符是一个使用频率最高的操作之一,通常情况下它的意义十分明确,就是将两个同类型的变量的值从一端(右端)传到另一端(左端)。但在以下两种情况下,需要对赋值操作符进行重载。
一是赋值号两边的表达式类型不一样,且无法进行类型转换。
二是需要进行深拷贝。
2. 赋值操作符重载的注意事项
赋值操作符只能通过类的成员函数的形式重载。这就说明了,如果要将用户自定义类型的值传递给基本数据类型的变量,只能通过类型转换机制,而不能利用重载来实现。
当赋值号两边的表达式不一致的时候,可能需要对赋值操作符进行重载,见下面的例子。
本文共计1501个文字,预计阅读时间需要7分钟。
1. 赋值操作符重载的原因 + 赋值操作符是使用频率最高的操作之一,通常情况下,其意义明确,即把两个同类型的变量的值从一端(右侧)传递到另一端(左侧)。然而,在以下两种情况下:
1.赋值操作符重载的原因
赋值操作符是一个使用频率最高的操作之一,通常情况下它的意义十分明确,就是将两个同类型的变量的值从一端(右端)传到另一端(左端)。但在以下两种情况下,需要对赋值操作符进行重载。
一是赋值号两边的表达式类型不一样,且无法进行类型转换。
二是需要进行深拷贝。
2. 赋值操作符重载的注意事项
赋值操作符只能通过类的成员函数的形式重载。这就说明了,如果要将用户自定义类型的值传递给基本数据类型的变量,只能通过类型转换机制,而不能利用重载来实现。
当赋值号两边的表达式不一致的时候,可能需要对赋值操作符进行重载,见下面的例子。

