
C++_函数模板、类模板、特化、模板元编程、SFINAE、概念
模板 概述 C++模板是一个强大的编程工具,使得可以编写通用的、类型安全的代码 模板主要用于函数和类的泛型编程,允许你定义通用算法和数据结构,然后在需要时使用具体类型进行实例化 使用场景 通用算法: 模板允许你编写通用算法,如排序、搜索等,而无需针对每种类型重复实现 容器类: 标...
模板 概述 C++模板是一个强大的编程工具,使得可以编写通用的、类型安全的代码 模板主要用于函数和类的泛型编程,允许你定义通用算法和数据结构,然后在需要时使用具体类型进行实例化 使用场景 通用算法: 模板允许你编写通用算法,如排序、搜索等,而无需针对每种类型重复实现 容器类: 标...
命名空间与模块 将类型及其成员函数接口置于同一命令空间中 如果要将非成员函数(特别是操作符和辅助函数)设计成类X的接口的一部分,那么就必须在与X相同的命名空间中定义它们,以便正确调用。 应该将类型和函数分别置于不同的命名空间,除非有意让它们一起工作 不要在头文件或者include...
导读 explicit 将构造函数声明为explicit,禁止编译器执行非预期(不是我们想要的)的类型转换。 除非我们有一个很好的理由,允许构造函数被用来进行隐式类型转换,否则我们应该把它声明为explicit的。 拷贝构造函数&&拷贝赋值操作符 拷贝构造函数被用...
概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能需要处理其他的很多工作,比如验证目录,验证目标文件是否存在等。这...
关于对象 概述 C语言中,数据和处理数据的操作是分开的。 C++中,可能采用独立的抽象数据类型。 加上封装后的布局成本 virtual function 用以支持一个有效率的“运行期绑定“。 virtual base class 用以实现”多次出现在继承体系中的基类有一个单一而被...
标准库tuple类模板 tuple是类似pair的模板。 每个pair的成员类型都不相同,但每个pair都恰好有两个成员。 不同tuple类型的成员类型也不相同,但是一个tuple可以有任意数量的成员。 每个确定的tuple类型的成员数目是固定的,但一个tuple类型的成员数目可...
简介 组件对象模型(COM)是一个独立于平台的分布式面向对象的系统,用于创建可交互的二进制软件组件 是OLE(复合文档),ActiveX(Internet组件)等的基础技术 不是一种语言,而是一种标准,用于创建运行时进行交互的可重用的软件库,无须编译到应用程序中,即可使用COM库...
概述 TCP是一种面向连接的协议,提供了可靠、有序和错误检测机制的字节流服务 与无连接的UDP协议相比,TCP强调数据完整性和可靠性 特点 可靠性 TCP确保所有数据包按顺序到达,如果丢失或出错,它们将被重新传输 面向连接 在数据交换之前,通信双方必须建立连接 全双工 一旦连接建...
组织与策略 不拘泥小节 大括号位置 空格和制表符 匈牙利记法 单入口,单出口 高警告级别 第三方头文件 未使用的函数参数 定义了从未使用过的变量 变量使用前可能未经初始化 遗漏了return语句 有符号数、无符号数不匹配 自动构建系统 增量构建 完全构建 版本控制系统 版本空值系...
概述 json是JS对象表示语法的子集。 Json语法 规则 大括号保存对象 中括号保存数组 值 数字 整数 浮点数 字符串 双引号括起来 逻辑值 true false 数组 对象 null rapidjson 概述 把include文件夹拷贝到项目。 在工程中引入。 关于doc...
搜索当前标签