Boost Interval Container Library(简称 Boost.Icl)是 Boost 库中的一个子库,专门用于处理区间(interval)和区间集合(inte...
Protocol Buffers 使用了一种中立和平台无关的语言来定义数据结构。然后基于该数据结构定义生成不同编程语言操作代码来实现数据的序列化和反序列化数据,从而使得不同编程语言...
Protocol Buffer 会将对象序列化为二进制数据。在这篇文章中,我们简单了解下它是如何对数据进行编码的,即:了解下底层的编码格式。当然并非必须的,日常使用 Protoco...
Protocol Buffers(protobuf)主要用于在不同系统、不同语言之间进行高效的数据序列化和反序列化。从而实现跨平台、跨语言的数据交互、网络通信、持久化存储等问题的工...
Protocol Buffer Serialization 指的是使用 Protocol Buffer 进行数据序列化的过程。在这个过程中,结构化的数据被转换成 Protocol ...
虚函数(virtual function)指的是 C++ 中使用 virtual 关键字声明的函数。从表面看起来仅仅是一个函数的声明,但是其背后有着一套较为复杂的机制,通过这套机制...
C++ Boost 库中的环形缓冲区(Circular Buffer)是一种数据结构,用于实现固定大小的队列,支持高效的插入和删除操作。它的主要特点是,当缓冲区满时,新的元素会覆盖...
Boost.Bimap 是 C++ Boost 库中的一个组件,它提供了一种双向映射的容器,即键和值之间的双向映射。这意味着可以通过键查找值,也可以通过值查找键。Boost.Bim...
在写程序时,我们经常会处理小数这种数据。这节课,将会给同学们讲解下,在计算机中小数存储的两种方式:浮点小数和定点小数。学习目标: 最后,我们来总结下这两种存储方式:
字节序(Byte Order)是指在多字节数据类型(如整数和浮点数)在内存中存储时,字节的排列顺序。常见的字节序有大端序(Big Endian)和小端序(Little Endian...
在 C/C++中,随机数生成是一项常见的任务,通常用于模拟、游戏、密码学和统计等应用中。生成时一般会指定满足均匀分布、或者正态分布的随机数。下面,介绍下如何在 C 和 C++ 中生...
1. 指针和引用区别 程序运行结果: 上面代码中,可以看到: 指针能够实现间接修改变量的值,引用也可以,并且引用的语法更简单; 指针可以初始化 NULL,指针必须初始化为与合法的空...
函数指针是 C 语言中一项非常重要的特性,对于 C/C++ 程序员是必须要掌握的技术。函数指针提供了一种灵活的方式来操作函数,允许在运行时动态地选择要执行的函数。 1. 函数名理解...
数组是一种用于存储多个相同类型元素,C语言中一种非常重要的数据结构。它是一种线性数据结构,可以按顺序访问和操作数组中的元素。 1. 数组存储原理 C 数组的存储原理可以通过以下几个...
字符串在计算机编程中具有广泛的应用。字符串指的是由字符组成的序列,它是一种常见的数据类型,用于表示和处理文本数据。在这一篇文章中,我们将会字符串相关的内容: 字符串原理 字符串和内...
C 语言是一种强大的编程语言,它提供了指针的概念和相关的语法。指针是一种变量,它存储了内存地址,可以用于直接访问和操作内存中的数据。 C 指针类型的作用 多级指针 1. 指针与内存...
我们知道 C++代码的执行效率大多数情况下都会优于 Python 代码。当我们开发一个 Python 工具,分享时,使用者就可以通过 pip install xxx 的方式安装我们...
Epoll IO 模型是 Linux 中用于 I/O 多路复用的机制,可以用于监听多个文件描述符上的事件,以及非阻塞地等待这些事件的发生。其工作机制大致如下: 首先,初始化一个 E...