Zlib记述:一

Zlib记述:一

bingliaolong C C++ 1年前 (2023-09-17) 15 0

概述 zlib库是一个广泛使用的压缩/解压缩库 下面实现是用了zlib 1.3版本的代码和相关库 具体是使用了zlib源码中带的minizip 其中的minizip扩展提供了处理ZIP文件的功能 解压 在解压之前可能...

51CTO:C++编程技巧与规范

51CTO:C++编程技巧与规范

bingliaolong C++ 3年前 (2021-08-01) 5 0

类中的类类型静态成员变量 概述 对于类类型的静态成员变量,即使没有被使用,也会执行这个静态成员变量的构造和析构。 对于int,double基础类型,如果没有用到,编译器可能不为它分配内存。 使用 老用法 class ...

C++11_四种类型转换

C++11_四种类型转换

bingliaolong C++ 5年前 (2019-11-10) 11 0

static_cast 用来完成编译器认可的隐式类型转换。 任何具有明确定义的类型转换,只要不包含底层const,都可以使用static_cast。 范围: 基本数据类型之间的转换。 派生体系中向上转型:将派生类指针...

C++标准模板库编程实战_序列容器

C++标准模板库编程实战_序列容器

bingliaolong C++ 2年前 (2022-12-06) 7 0

简述 array<T,N> 长度固定,N个T类型的对象 不能增加或删除元素 vector<T> 底层实现是封装了顺序表,是一块物理上连续的空间 长度可变,必要时可以自动增加容量 但只能在序列的末尾高...

Effective C++_第二篇

Effective C++_第二篇

bingliaolong C++ 9个月前 (07-01) 3 0

12 复制对象的所有部分 概述 在C++中,实现拷贝构造函数和赋值运算符时,确保复制对象的所有成员变量是至关重要的 忽略某些成员变量可能会导致不完整或错误的对象状态,进而引发难以追踪的错误 为什么要复制对象的所有部分...

C++并发编程 _ 共享数据

C++并发编程 _ 共享数据

bingliaolong C++ 4年前 (2020-05-16) 7 0

概述 如果我们在线程间共享数据,我们需要设置规则,哪个线程可以访问数据的哪一位,什么时间以及如何将更改传达给关心数据的其他线程。 关键点 问题 从整体上来看,所以线程之间共享数据的问题,都是修改数据导致的。如果所有的...

深度探索C++对象模型一

深度探索C++对象模型一

bingliaolong C++ 3年前 (2022-02-09) 15 0

关于对象 概述 C语言中,数据和处理数据的操作是分开的。 C++中,可能采用独立的抽象数据类型。 加上封装后的布局成本 virtual function 用以支持一个有效率的“运行期绑定“。 virtual base...

预处理指令记录:一

预处理指令记录:一

bingliaolong C++ 1年前 (2023-07-09) 2 0

Windows 检查编译器 _MSC_VER 预处理指令 用于检查是否正在使用 Microsoft Visual C++ 编译器,并根据编译器的类型或版本执行相应的代码 __cplusplus_winrt 预处理指令...

线程和协程

线程和协程

bingliaolong C++ Windows 5个月前 (10-31) 10 0

超线程技术 概述 现代CPU通常确实在物理核心的基础上引入逻辑核心,例如通过超线程(Hyper-Threading)技术,一个物理核心能够处理两个线程 使得操作系统和应用程序认为该CPU拥有的核心数量翻倍 不过,CP...

C++17_第二篇

C++17_第二篇

bingliaolong C++ 5年前 (2019-12-22) 11 0

静态断言 相关介绍: 预处理宏assert()在标准库头文件cassert中定义。 它可以在程序中测试逻辑表达式。 只要条件(表达式)是false,assert()宏就会调用std::abort(),终止程序。 另外...

扫一扫二维码分享