Effective C++_第四篇

Effective C++_第四篇

bingliaolong C++ 10个月前 (07-02) 3 0

34 区分接口继承和实现继承 概述 在C++的面向对象编程中,继承可以用于两种目的:接口继承和实现继承 理解并区分这两种继承方式有助于设计更清晰、可维护和灵活的类结构 接口继承 子类继承基类的接口,但可以重新定义(覆...

C++_成员访问权限

C++_成员访问权限 7

bingliaolong C++ 10个月前 (06-20) 10 0

关于继承 概念定义 用户 把包含这个基类或派生类的第三方类或函数暂时称为用户 基类定义如图: public继承 class Derived : public Base { ... } 含义 基类的 public 成员...

C++14_第二篇

C++14_第二篇

bingliaolong C++ 10个月前 (06-29) 1 0

变量模板 C++14引入了变量模板,使得可以为变量定义模板 template<typename T> constexpr T pi = T(3.1415926535897932385); std::cou...

C++_友元、联合体、内联、static、指针、深浅拷贝

C++_友元、联合体、内联、static、指针、深浅拷贝

bingliaolong C++ 10个月前 (06-21) 3 0

友元类 适用情况 紧密协作: 当两个类需要紧密协作,且需要共享内部实现细节时 例如,操作类需要访问数据类的内部数据来实现复杂的功能 封装复杂操作: 当某些复杂操作不能或不应成为数据类的成员函数时 通过友元类可以将这些...

Skia总结概述

Skia总结概述

bingliaolong Skia 1年前 (2023-11-15) 39 0

核心结构简述 画布 canvas 画布是Skia绘图操作的核心 它提供了一个虚拟的绘图空间,你可以在上面绘制形状、文本和图像 画笔 paint 画笔用于定义绘图操作的样式和颜色 可以设置笔刷的颜色、透明度、填充模式等...

C++并发编程 _ 无锁数据结构

C++并发编程 _ 无锁数据结构

bingliaolong C++ 1年前 (2023-09-18) 9 0

自旋锁 用ATOMIC_FLAG_INIT进行了flag的初始化 它确保了flag的初始状态是清除(或说“未设置”)状态 lock调用了test_and_set方法来试图获取锁 test_and_set会检查flag...

包管理器:设计与实现

包管理器:设计与实现

bingliaolong C++ 1年前 (2023-09-18) 10 0

背景 管理器用于管理多个任务 接入了管理器的模块,会根据自己要做的事情,来生成不同的任务 而这些任务的生成,是由接入了管理器的模块,通过一些重要的数据(比如目标数据包的编号,以及目标所在的位置,要求管理器执行的任务类...

Zlib记述:一

Zlib记述:一

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

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

C++并发编程 _ 内存模型原子操作

C++并发编程 _ 内存模型原子操作 5

bingliaolong C++ 2年前 (2022-08-07) 22 0

内存模型 对象和内存位置 在一个C++程序中的所有数据都是由对象(objects)构成。 无论对象是怎么样的一个类型,一个对象都会存储在一个或多个内存位置上。 每一个内存位置不是一个标量类型的对象,就是一个标量类型的...

扫一扫二维码分享