C++左移运算符重载
发布时间
阅读量:
阅读量
在C++编程语言中,当我们进行输出操作时,通常采用如下格式:cout << xxx << endl。此时,<<运算符将涉及两个操作数,其中cout作为第一个操作数,而xxx则作为第二个操作数。因此,若我们将<<运算符的重载函数定义在类的内部,则第一个操作数将被替换为类的对象。
**instance.cout << xxx... **
这将导致与我们最初设想的格式存在差异。
因此,在编写<<重载函数时,应当将其定义为全局函数。
接下来,需将该全局函数声明为类的友元函数。
下面通过具体示例进行说明:
/**************************************************** * brief : <<运算符重载
* author : shao
* date : 2020-03-10
* note : 左移运算符不能写成类成员函数,
* 因为这样会使得我们在调用的时候,
* 格式和之前的cout不一样,那么就
* 失去了重载的意义。
* 所以,左移运算符我们写成全局友元函数。
* 以后为了方便,我们会默认把成员变量
全部评论 (0)
还没有任何评论哟~
