假设有类A,它的私有成员是一个整型变量a_

A a;

我们想要把它的私有成员直接用 cout<<a<<endl 输出的话要用到左移运算符的重载。

我们把<<运算符重载为全局函数,在类A中设为友元,即可直接用cout输出。

关于自增运算符,要实现a++,++a;需要重载前置自增,后置自增运算符。

#include<iostream>
using namespace std;
class A
{friend ostream& operator<<(ostream& cout, A& A_);
private:int a_num;
public:A() = default; //        自动生成无参构造函数 A(int x) :a_num(x) {} // 构造函数 A& operator++() //     重载前置自增运算符 {a_num++;return *this;}
};
ostream& operator<<(ostream& cout, A& A_) // 重载左移运算符
{cout << A_.a_num;return cout;
}
int main()
{A a1(5);cout << "before:" << a1 << endl;cout << "after:" << ++a1 << endl;cout << "final:" << a1 << endl;system("pause");return 0;
}

c++,运算符重载,左移运算符自增运算符。相关推荐

  1. 运算符重载——左移运算符重载

    目录: 运算符重载--算术运算符重载 运算符重载--递增运算符重载 运算符重载--左移运算符重载 运算符重载--赋值运算符重载 应用场景: 可以输出自定义的数据类型信息 Person p(" ...

  2. C++ 运算符重载(二) | 类型转换运算符,二义性问题

    文章目录 类型转换运算符 概念 避免过度使用类型转换函数 解决上述问题的方法 转换为 bool 显式的类型转换运算符 类型转换二义性 重载函数与类型转换结合导致的二义性 重载运算符与类型转换结合导致的 ...

  3. [转载] python 运算符重载有什么用_Python运算符重载用法实例分析

    参考链接: Python运算符重载 本文实例讲述了Python运算符重载用法.分享给大家供大家参考.具体如下: 在Python语言中提供了类似于C++的运算符重在功能: 一下为Python运算符重在调 ...

  4. 第7周-项目1-完整实现复数类中的运算符重载-扩展+、-、*、/运算符的功能

    问题及代码: /* *Copyright (c)2015,烟台大学计算机与控制工程学院 *All rights reserved. *文件名称:number.cpp *作 者:单昕昕 *完成日期:20 ...

  5. 【++运算符重载】c++实现递增运算符重载

    作用: 通过重载递增运算符,实现自己的整型数据 class MyInteger {friend ostream& operator<<(ostream& out, MyIn ...

  6. c/c++入门教程 - 2.4.5 c++运算符重载(加号、左移、递增、赋值、关系、函数调用)

    目录 4.5 运算符重载 4.5.1 加号运算符重载 4.5.2 左移运算符重载 4.5.3 递增运算符重载 4.5.4 赋值运算符重载 4.5.5 关系运算符重载 4.5.6 函数调用运算符重载 相 ...

  7. 【C++ 语言】面向对象 ( 函数重载 | 运算符重载 | 运算符重载两种定义方式 | 拷贝构造方法 | RVO 优化 | NRVO 优化 )

    文章目录 函数重载 运算符重载 ( 类内部定义云算符重载 ) 运算符重载 ( 类外部定义运算符重载 ) 可重载的运算符 拷贝构造方法 编译器优化 ( RVO 优化 | NRVO 优化 ) 完整代码示例 ...

  8. C++从0到1的入门级教学(十二)——运算符重载

    文章目录 12 运算符重载 12.1 加法运算符重载 12.2 左移运算符重载 12.2.1 演示与说明 12.2.2 常见的友元使用:重载>>运算符 12.3 递增运算符重载 12.4 ...

  9. 【黑马程序员 C++教程从0到1入门编程】【笔记4】C++核心编程(类和对象——封装、权限、对象的初始化和清理、构造函数、析构函数、深拷贝、浅拷贝、初始化列表、友元friend、运算符重载)

    黑马程序员C++教程 文章目录 4 类和对象(类属性[成员属性],类函数[成员函数]) 4.1 封装 4.1.1 封装的意义(三种权限:public公共.protected保护.private私有)( ...

  10. C++运算符重载讲解与经典实例

    转自:http://blog.csdn.net/dingyuanpu/article/details/5852825 C++中预定义的运算符的操作对象只能是基本数据类型,实际上,对于很多用户自定义类型 ...

最新文章

  1. 小区社交应用:如何打破近在眼前的物理障碍和陌生感?
  2. 09.span query 查询
  3. 实用常识 | 巧妙使用IA图片助手多地址提取批量下载(老白嫖怪了)
  4. java 画笔跟swing组件_「软帝学院」:2019思维最清晰的java学习路线
  5. mac mysql docker_docker学习(5) 在mac中创建mysql docker容器
  6. 《操作系统》实验报告——进程通信
  7. bmp qimage 保存位_在Qt中保存QImage(Save a QImage in Qt)
  8. 空号检测模块设计原理
  9. 陪学读书会——《定位》第十三章:品牌延伸何时有效
  10. matlab命令行运行,命令行运行matlab
  11. 罗马数字数字1到10对照表
  12. 计算机提示资源管理器停止,windows资源管理器已停止工作,教您提示win资源管理器已停止工作...
  13. 毛玻璃效果 php,CSS3打造磨砂玻璃背景效果
  14. ldslite是什么启动项_windows文件夹删除时提示正在被使用无法删除怎么办?
  15. c语言中优先级劣后级,基金优先级与劣后级的区别是什么 看完你就明白了
  16. Linkis和DSS本地和远程调试文档
  17. Apple Color Emoji打开
  18. TOOL 一个裴蜀定理解析器
  19. 幕布,为知笔记和Effie哪个更适合采编呢?
  20. web安全之路(一)

热门文章

  1. 测评 | 利用ONES Project实现2021年考研规划
  2. ECSHOP和SHOPEX快递单号查询德邦插件V8.6专版
  3. C++学习日记12——设计模式
  4. 成都链家网租房信息分析报告
  5. SLAMTEC-思岚科技新品激光雷达RPLIDAR T1大揭秘
  6. 运笔操(练字诀注释二——执笔矫正训练)
  7. ARTS打卡20-别轻视简约的JSON
  8. 对腐蚀 和 膨胀 的理解
  9. 归并排序与快速排序背后的秘密
  10. 微信小程序 第三章 “音乐”小程序项目