C++20 STL CookBook2 更强大的编译时 + 安全比较 + spaceship比较符
问题是 x 是有符号的,而 y 是无符号的。事实上,将无符号值转换为相同大小的有符号值,因为有符号整数使用二进制补码表示法(使用最高有效位作为符号)。给定相同大小的整数,最大有符号值是无符号值的一半。使用此示例,如果整数是 32 位,-3(有符号)将变为 FFFF FFFD(十六进制),或 4,29
配置vscode的C/C++环境
解压下载的文件。
C#与C++交互开发系列(二十):跨进程通信之共享内存(Shared Memory)
共享内存(Shared Memory)是一种高效的跨进程通信方式,尤其适用于同一台计算机上的进程之间的高速数据传输。与套接字相比,共享内存允许多个进程直接访问同一块内存区域,减少了数据传输的中间步骤,适合需要高性能和低延迟的场景。本文将介绍如何在 C# 和 C++ 之间通过共享内存实现跨进程通信,并
Visual Studio Code(VS Code)配置C/C++环境
本文详细介绍了如何在Visual Studio Code(VS Code)中配置C/C++环境。
【NOIP提高组】潜伏者
R国和S国正陷入战火之中,双方都互派间谍,潜入对方内部,伺机行动。历尽艰险后,潜伏于 S 国的R 国间谍小C 终于摸清了S 国军用密码的编码规则:1. S 国军方内部欲发送的原信息经过加密后在网络上发送,原信息的内容与加密后所得的内容均由大写字母‘A’-‘Z’构成(无空格等其他字符)。
【linux】线程概念与控制
详细讲解和实操了linux下线程概念与使用
C++实现---图
稠密图用邻接矩阵更佳,因为稠密图邻接表太复杂。稀疏图用邻接表更佳,因为邻接矩阵浪费空间。
STL关联式容器之RB-tree(红黑树)_中
为了避免中情况4“父子节点皆为红色”的情况,持续向RB-tree的上层结构发展,形成处理时效上的瓶颈,我们可以施行一个由上而下的程序(top-down proceduce):假设新增节点为A,那么就沿着root往A的路径,只要看到有某个节点X的两个子节点皆为红色,就把X改为红色,并把两个子节点改为黑
【Ubuntu】Ubuntu安装编译C/C++环境简易版教程
【Ubuntu】Ubuntu安装编译C/C++环境简易版教程
深度剖析C++STL:手持list利剑,破除编程重重难题(下)
在list的实现中,底层是通过双向链表结构来存储数据。双向链表中的每个节点不仅包含数据,还包含指向前一个节点和后一个节点的两个指针。以下是节点结构的定义:迭代器的作用类似于一个指针,它指向链表中的某个节点,允许我们通过类似指针的方式来访问和操作链表节点。与普通指针不同,迭代器提供了更高级的功能,并且
【Linux课程学习】:Linux的调试器-gdb的使用(常见指令,cgdb)
🎁个人主页:我们的五年🔍系列专栏:Linux课程学习 🌷追光的人,终会万丈光芒🎉欢迎大家点赞👍评论📝收藏⭐文章 ●gdb --version :查看当前gdb的版本。●sudo yum install -y gdb :安装gdb。●-g :生成debug版本的可执行程序。●r
c++--------《set 和 map》
• set的声明如下,T就是set底层关键字的类型• set默认要求T⽀持⼩于⽐较,如果不⽀持或者想按⾃⼰的需求⾛可以⾃⾏实现仿函数传给第⼆个模版参数• set底层存储数据的内存是从空间配置器申请的,如果需要可以⾃⼰实现内存池,传给第三个参数。• ⼀般情况下,我们都不需要传后两个模版参数。• set
QT嵌入支持WEBRTC的网页
就可以开始进行QT上的带视频的网页相关开发了,下面的例子在QT界面插入网页,网页里调用了getUserMedia获取本地视频。本文主要讲在QT开发中,WEBRTC网页版通信的第一步,浏览器与媒体设备(即麦克风和摄像头)的交互的实现。先编译好支持音视频的QtWebEngine或QCefView的其中一
如何使用gtest编写C++单元测试代码
相信很多人都不喜欢编写单元测试代码,但是单元测试对我们来说真的很重要,单元测试可以暴露出我们自己的代码的内部问题,从而保证我们自己的代码的正确性,避免出现各种bug。TEST_F宏的第一个参数是测试套件名,必须要和固件类名一致,第二个参数是测试案例名,自己填写。TEST_P宏的第一个参数是测试套件名
【Linux】:进程信号(详谈信号捕捉 & OS 运行)
✨🌏1. 信号捕捉的流程 💦还记得我们之前说过的吗,处理信号时并不一定立即去处理,有可能此时我们在做一个优先级很高的事情, 此时信号处理就会等到一个合适的时候去处理。现在我们就要来理解一下,什么叫作合适的时候 ❓言归正传,让我们开始讲信号捕捉的具体流程如
linux下的gtest单元测试,使用示例
gtest是Google的一套用于编写C++测试的框架,可以运行在很多平台上(包括Linux、Mac OS X、Windows、Cygwin等等)。基于xUnit架构。支持很多好用的特性,包括自动识别测试、丰富的断言、断言自定义、死亡测试、非终止的失败、生成XML报告等等。安装后的 GoogleTe
【C++】—— map 与 set 深入浅出:设计原理与应用对比
之前的学习之中 , 我们已经接触过STL中的部分容器,比如:vector、list、deque、forward_list(C++11)等,这些容器统称为。
Visual Studio Code(VS)配置C/C++开发环境
Visual Studio Code(VS)配置C/C++开发环境。
【C++】深入理解自定义 list 容器中的 list_iterator:迭代器实现详解
通过,我们实现了自定义list容器的标准遍历方式。总结封装节点指针通过持有list_node指针_node来访问和移动链表节点。重载操作符和->用于访问节点数据。++和--用于迭代器的前进和后退。==和!用于迭代器的比较。与listlist_node的关系依赖list_node实现节点移动和数据访问
ESP32应用开发-Webserver
ESP32作为AP模式,终端连接该AP,通过地址即可访问该web服务器了,前端界面文件通过http GET方式获取,包括css文件,图片,js文件等。,是支持lambda函数的,锁直接把函数传参直接写在调用处,是不是很方便。,是支持lambda函数的,锁直接把函数传参直接写在调用处,是不是很方便。字