摘要: [TOC] 1. 转换构造函数 类的构造函数可以定义不同类型的参数,当参数满足下列条件时,就可称其为转换构造函数。 函数仅有一个参数 参数是基本类型或者其他类类型 其中,有一种特殊情形,也可构成转换构造函数。 函数有多个参数,但除了第一个参数外,其余都是默认参数 第一个参数是基本类型或者其他类类型 阅读全文
posted @ 2019-09-25 19:39 原野追逐 阅读(1483) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 结论 前面两次笔记都是C++中可以重载且无副作用的操作符,本次笔记比较特殊,主要列出两个C++语法允许重载、但在工程中不应该(不允许)重载的操作符: 逻辑操作符 和 逗号操作符 构成的逗号表达式 这两个操作符在工程中不允许重载的原因是:重载后无法完全实现操作符的原生语义。 2. 逻 阅读全文
posted @ 2019-09-24 21:05 原野追逐 阅读(365) 评论(1) 推荐(0) 编辑
摘要: [TOC] 1. 数组操作符重载 数组操作符重载 通过重载数组操作符,可以使类的对象支持数组的下标访问 数组操作符只能重载为类的成员函数 重载函数能且仅能使用一个参数,也就是数组下标 可以定义不同参数的多个重载函数 在重载数组操作符时,要记得数组操作符的原生语义——数组访问和指针运算。 cpp / 阅读全文
posted @ 2019-09-23 23:32 原野追逐 阅读(516) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 操作符重载的概念 操作符重载的本质 操作符重载的本质是用特殊形式的函数扩展操作符的功能 C++通过 关键字定义操作符重载函数 操作符重载遵循相同的函数重载规则 操作符重载的规则 在进行操作符重载时,必须遵循以下三条规则 不能改变原操作符的优先级 不能改变操作数的个数 不能改变操作符 阅读全文
posted @ 2019-09-19 21:39 原野追逐 阅读(395) 评论(0) 推荐(0) 编辑
摘要: [TOC] 由Linux内核提供的基本时间是自1970 01 01 00:00:00 +0000 (UTC)这一特定时间以来经过的秒数,这种描述是以数据类型time_t表示的,我们称其为日历时间。 获得日历时间的函数有3个:time、clock_gettime和gettimeofday。 time函 阅读全文
posted @ 2019-09-18 23:32 原野追逐 阅读(1251) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 文件类型 Linux下一切皆文件,但文件也分为7种类型,文件类型信息包含在struct stat结构的st_mode成员中,可以用下表中的宏来检测文件类型,这些宏的参数都是stat.st_mode。 | 文件类型 | 说 明 | 检测文件类型的宏 | | | | | 普通文件 | 阅读全文
posted @ 2019-09-18 23:20 原野追逐 阅读(573) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. IO模型 Linux下可用的IO模型有5种,分别是: 阻塞式IO 非阻塞式IO IO复用 信号驱动式IO(SIGIO) 异步IO(Posix的aio_系列函数) 其中,除了异步IO,其余都属于同步IO模型。 在这5种模型中,我们目前只关注前3种,并且把IO复用放在网络编程专题中讲, 阅读全文
posted @ 2019-09-18 23:09 原野追逐 阅读(952) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 函数重载回顾 函数重载的本质为相互独立的不同函数 C++通过函数名和函数参数确定函数调用 无法直接通过函数名得到重载函数的入口地址 函数重载必然发生在同一个作用域中 2. 类中的函数重载 类的成员函数可以进行重载,包括 构造函数的重载 普通成员函数的重载 静态成员函数的重载 注意: 阅读全文
posted @ 2019-09-18 23:07 原野追逐 阅读(1038) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 系统调用IO(无缓冲IO) 系统调用 在Linux中一切皆文件,文件操作在Linux中是十分重要的。为此, Linux内核提供了一组用户进程与内核进行交互的接口用于对文件和设备进行访问控制,这些接口被称为系统调用。 系统调用对于应用程序最大的作用在于: 以统一的形式,为应用程序提供 阅读全文
posted @ 2019-09-18 22:58 原野追逐 阅读(1883) 评论(0) 推荐(0) 编辑
摘要: [TOC] 1. 静态成员变量 先来回顾一下普通成员变量 通过对象名能够访问public成员变量 每个对象的普通成员变量都是专属的,不能在对象之间共享 在C++中还可以定义静态成员变量 静态成员变量属于整个类所有,所有对象共享类的静态成员变量 静态成员变量的生命周期不依赖于任何对象 可以通过类名和对 阅读全文
posted @ 2019-09-18 22:57 原野追逐 阅读(12553) 评论(0) 推荐(2) 编辑