当前位置: 首页 > news >正文

c++环境和vscode常用的一些有用插件

环境

WSL需要安装cmake

在这里插入图片描述

编译器g+±14 应该是包含了所有std:c++23把好像包含部分c++26

在这里插入图片描述

vscode 需要插件cmake

vscode clangd 方便提示吧

在这里插入图片描述

File Watch 插件目的在保存.h/.cpp文件时候自动执行vscode 的cmake吧

在这里插入图片描述

error lens 方便每次显示错误和警告的提示懒得每次点击去看错误

在这里插入图片描述

在这里插入图片描述

Edit Suggest Preview:打开

在这里插入图片描述

Git Graph 的插件还是挺好用的

在这里插入图片描述

在这里插入图片描述

目录

在这里插入图片描述

.clangd

CompileFlags:Add:- -std=c++26- -ferror-limit=0CompilationDatabase: "compile_commands.json"Diagnostics:Suppress:# 抑制“缺少大括号”的警告,主要针对列表初始化写法- missing-braces# 忽略未使用的函数的警告(例如调试工具函数)- unused-function# 忽略结构体未完全初始化的警告(部分字段默认初始化)- missing-field-initializers# 忽略结构体内存对齐相关的 pack 警告- pragma-pack

.clang-format

BasedOnStyle: Google # 或者其他基础风格,比如 LLVM、Mozilla 等
IndentWidth: 4       # 缩进宽度
TabWidth: 4          # Tab 显示宽度
UseTab: Never        # 使用空格代替 Tab
ColumnLimit: 100     # 设置最长换行长度为 120 个字符
BreakBeforeBraces: Attach # 大括号样式
SortIncludes: false
AccessModifierOffset: -4           # 类访问修饰符(public/private)缩进的偏移

settings.json

{"editor.wordWrap": "on","C_Cpp.intelliSenseEngine": "disabled","clangd.path": "/usr/bin/clangd","clangd.arguments": ["--enable-config","-log=verbose","-pretty","--background-index","--compile-commands-dir=/home/xiaqiu/test/build","--header-insertion=never","--function-arg-placeholders=true"],"editor.tokenColorCustomizations": {"textMateRules": [{"scope": [//following will be in italic"function","entity.name.type.class", //class names"constant", //String, Number, Boolean…, this, super"keyword","storage"],"settings": {"fontStyle": "bold",// "foreground": "#240ab4"}},{"scope": "comment","settings": {"fontStyle": "bold","foreground": "#c8c8c8"}},{"scope": ["entity.name.type.class"],"settings": {"foreground": "#03A1FE","fontStyle": "bold"},},{"scope": "entity.name.function", // 定义函数调用的范围"settings": {// "foreground": "#d58728f7","fontStyle": "bold",}}],},"editor.formatOnSave": true,"editor.fontFamily": "Fira Code","editor.guides.bracketPairs": true,"cmake.debugConfig": {"console": "internalConsole"},"filewatcher.commands": [ //需安装file watcher 插件{//保存自动编译当前的文件"match": "\\.(cpp|h)$","vscodeTask": ["cmake.build"], //cmake 插件的命令"runInBackground": true,"event": "onFileChange"}]
}

上层CMakeLists.txt

cmake_minimum_required(VERSION 3.8)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
project("study")
add_subdirectory("src")

下层CMakeLists.txt

# 设置 CMake 的最低版本要求
cmake_minimum_required(VERSION 3.10)# 设置项目的名称和使用的编程语言
project(MyCppProject CXX)# 设置 C++ 标准为 C++26
set(CMAKE_CXX_STANDARD 26)# 使用 file(GLOB ...) 获取当前目录下所有 .cpp 文件
file(GLOB SOURCES "*.cpp")# 排序 SOURCES 列表(字典顺序)
list(SORT SOURCES)# 获取字典顺序最大的文件
list(LENGTH SOURCES LIST_SIZE)if(LIST_SIZE GREATER 0)set(MAX_NUMBER -1) # 初始化最大数字为负值set(MAX_FILE "") # 初始化最大文件为空字符串# 遍历 SOURCES 列表中的所有文件foreach(FILE ${SOURCES})# 从路径中提取文件名部分get_filename_component(FILENAME ${FILE} NAME)# 获取文件名中的数字部分string(REGEX MATCH "[0-9]+" FILE_NUMBER "${FILENAME}")# 如果提取到的数字大于当前最大数字,更新最大数字和对应的文件if(FILE_NUMBER GREATER ${MAX_NUMBER})set(MAX_NUMBER ${FILE_NUMBER})set(MAX_FILE ${FILE})endif()endforeach()# 输出最大的文件和数字message(STATUS "最大数字对应的文件是: ${MAX_FILE}")message(STATUS "提取的最大数字是: ${MAX_NUMBER}")# 编译提取数字最大值对应的文件if(MAX_FILE)message(STATUS "正在编译文件: ${MAX_FILE}")# 这里可以添加编译命令,例如:# add_executable(${MAX_FILE} ${MAX_FILE})else()message(WARNING "没有找到包含数字的文件")endif()
else()message(WARNING "没有 .cpp 文件被发现")
endif()# 创建可执行文件
add_executable(test ${MAX_FILE})

debug 发现没有gdb 安装gdb

在这里插入图片描述

在这里插入图片描述

查看二进制需要hex edit插件

在这里插入图片描述

在这里插入图片描述

值得注意的地方

在这里插入图片描述

相关选项推荐

clangd 有很多有用的启动参数,可以极大提升你的 C/C++ 开发体验,特别是在 VS Code 或其他支持 LSP 的编辑器中。

以下是一些 常用且推荐的 clangd 参数,并附上说明和用途:


🔧 常用 & 推荐 clangd 启动参数

参数说明推荐值
--completion-style=控制补全显示的详细程度detailed
--function-arg-placeholders补全函数时是否插入参数占位符true ✅(默认)
--header-insertion=控制自动插入头文件iwyu / never
--header-insertion-decorators是否显示头文件建议来源(如 #include <vector>true(默认)
--background-index在后台为整个项目建立索引,加速跳转true
--pch-storage=控制 PCH(预编译头文件)缓存存储方式memory(快)
--clang-tidy启用 clang-tidy 静态检查true
--suggest-missing-includes当找不到符号时,建议包含头文件true
--ranking-model自动补全排序方式decision_forest(更智能)
--log=设置日志输出verbose(调试用)

📌 参数详细说明:

1. --completion-style=detailed

显示补全项的完整类型签名、返回值,帮助你更快理解函数。

2. --clang-tidy

运行 clang-tidy 检查,给你静态代码质量建议(如风格、性能、bug 潜在点)。

✨ 可以配合 .clang-tidy 文件进行自定义检查。

3. --background-index

为整个项目自动生成索引,而不是仅索引打开的文件。大大提升跳转(Go to definition)、查找引用速度。

4. --pch-storage=memory

使用内存缓存 PCH,加快补全速度(尤其是大型项目)。缺点是占用更多内存。

5. --header-insertion=iwyu

“Include What You Use” 模式,clangd 会在你用到符号时,自动推荐需要 #include 的头文件。

6. --suggest-missing-includes

如果你用到了某个类型但没包含对应头文件,clangd 会提示你并建议修复。

7. --ranking-model=decision_forest

启用更智能的补全排序模型(使用机器学习技术),比默认排序更符合实际需求。


⚙️ 示例:VS Code 中启用这些参数

编辑你的 settings.json

"clangd.arguments": ["--background-index","--clang-tidy","--completion-style=detailed","--function-arg-placeholders=true","--pch-storage=memory","--header-insertion=iwyu","--suggest-missing-includes","--ranking-model=decision_forest"
]

🎯 总结:推荐开启的选项组合

--background-index
--clang-tidy
--completion-style=detailed
--function-arg-placeholders=true
--header-insertion=iwyu
--suggest-missing-includes
--ranking-model=decision_forest

这些选项一起使用,可以显著增强代码补全、诊断、导航的体验。


另外一个悬浮翻译的插件也不错

在这里插入图片描述

在这里插入图片描述

英语发音的插件

在这里插入图片描述

在这里插入图片描述

vscode 的smooth 选项

在这里插入图片描述

相关文章:

c++环境和vscode常用的一些有用插件

环境 WSL需要安装cmake 编译器g14 应该是包含了所有std:c23把好像包含部分c26 vscode 需要插件cmake vscode clangd 方便提示吧 File Watch 插件目的在保存.h/.cpp文件时候自动执行vscode 的cmake吧 error lens 方便每次显示错误和警告的提示懒得每次点击去看错误 Edit Sugge…...

UE自动索敌插件Target System Component

https://www.fab.com/zh-cn/listings/9088334d-3bde-4e10-a937-baeb780f880f ​ 一个完全用 C 编写的 UE插件&#xff0c;添加了对简单相机锁定/瞄准系统的支持。它最初​​在蓝图中开发和测试&#xff0c;然后转换并重写为 C 模块和插件。 特征&#xff1a; 可通过一组可在…...

从括号匹配看栈:数据结构入门的实战与原理

在计算机科学的世界里&#xff0c;数据结构是程序员的 “瑞士军刀”&#xff0c;不同的数据结构适用于不同的场景&#xff0c;能高效解决各类问题。其中&#xff0c;栈作为一种简单却强大的数据结构&#xff0c;在很多实际应用中发挥着关键作用。今天&#xff0c;我们就通过一个…...

ReLU函数及其Python实现

ReLU函数及其Python实现 文章目录 ReLU函数及其Python实现1. ReLU函数定义2. Python实现3. 在深度学习中的应用总结 1. ReLU函数定义 ReLU&#xff08;Rectified Linear Unit&#xff0c;修正线性单元&#xff09;函数是深度学习中常用的激活函数之一。它的定义非常简单&#…...

Rain World 雨世界 [DLC 解锁] [Steam Epic] [Windows SteamOS]

Rain World 雨世界 [DLC 解锁] [Steam & Epic] [Windows & SteamOS] 需要有游戏正版基础本体&#xff0c;安装路径不能带有中文&#xff0c;或其它非常规拉丁字符&#xff1b; DLC 版本 至最新全部 DLC 后续可能无法及时更新文章&#xff0c;具体最新版本见下载文件说明…...

n8n 工作流画布上下左右移动的操作方法

n8n 工作流画布上下左右移动的操作方法 1. n8n 工作流画布上下移动2. n8n 工作流画布左右移动3. n8n 工作流画布扩大和缩小4. n8n 工作流画布缩放到适合 1. n8n 工作流画布上下移动 鼠标滚轮向上滚动是向上移动鼠标滚轮向下滚动是向下移动 2. n8n 工作流画布左右移动 按照Shi…...

Linux 常用命令合集

一、用户权限管理 切换管理员身份 sudo su&#xff1a;普通用户临时获取 root 权限&#xff0c;需输入当前用户密码。管理员提示符&#xff1a;root主机名:路径#。退出管理员&#xff1a;exit&#xff0c;返回普通用户状态。 以管理员身份执行命令 sudo 命令 参数&#xff1a;…...

B站Michale_ee——ESP32_IDF SDK——FreeRTOS_7 流数据缓冲区、消息缓冲区

一、Stream Buffer流数据缓冲区 流数据缓冲区用来处理像音频之类的流数据&#xff1b; 1.API简介 &#xff08;1&#xff09;创建流数据缓冲区 &#xff08;2&#xff09;向流数据缓冲区中发送数据 &#xff08;3&#xff09;从流数据缓冲区中接收数据 2.示例代码及运行结果…...

HCL(HashiCorp Configuration Language)是一种结构化配置语言

HCL&#xff08;HashiCorp Configuration Language&#xff09;是一种结构化配置语言&#xff0c;语法简洁且可读性强&#xff0c;广泛用于 Docker Buildx Bake、Terraform、Nomad 等工具的配置。以下是其核心语法规则和示例&#xff1a; 1. 基础结构 HCL 使用 块&#xff08;…...

k9s 一个基于终端的 Kubernetes 集群管理工具(TUI)

k9s 是一个基于终端的 Kubernetes 集群管理工具&#xff08;TUI&#xff09;&#xff0c;通过快捷键和交互式命令快速操作资源。以下是其核心用法和常见场景&#xff1a; 1. 基本命令 启动 k9s k9s # 默认连接当前 kubeconfig 配置的集群k9s -n <namespace> # 指定命…...

高等数学-第七版-下册 选做记录 习题10-1

1. 4. 5....

DBeaver连接人大金仓数据库V9

1、官网下载驱动jdbc 打开官网地址&#xff0c;找到下面的V9R1-JDBC&#xff0c;点击后面的下载即可&#xff0c;保存到本地 2、解压最新版的驱动程序 3、把***_JDBC文件夹内的驱动程序复制到DBeaver安装目录下的plugins文件夹里 4、打开dbeaver程序&#xff0c;增加kingbase…...

跟韩学AiOps系列之2025学MySQL系列_如何在MySQL中开启和提交事务?!

跟韩学AiOps系列之2025学MySQL系列_如何在MySQL中开启和提交事务&#xff1f;! 文章目录 一、事务的基本操作1. 开启事务2. 执行事务内操作3. 提交事务4. 回滚事务 二、验证示例&#xff08;适用于 MySQL 5.7&#xff09;步骤 1&#xff1a;准备测试表和数据步骤 2&#xff1a…...

【KWDB 创作者计划】利用KWDB解决工业物联网场景中的海量数据管理难题的思考

利用KWDB解决工业物联网场景中的海量数据管理难题 一、什么是KWDB&#xff1f;二、工业物联网场景中的数据管理痛点2.1 数据量大且增长迅速2.2 数据多样性2.3 实时性需求2.4 数据分析复杂性 三、KWDB 的技术优势与架构解读3.1 时间序列数据的高效管理3.2 高吞吐写入性能3.3 灵活…...

分享国产AI工作流集成数据库完成业务处理

在现代企业应用中&#xff0c;业务流程的自动化和数据管理是提高效率的关键。Taskflow 作为一个强大的任务流管理工具&#xff0c;可以通过集成数据库实现复杂业务逻辑的处理。本文将分享如何利用 Taskflow 集成数据库&#xff0c;优化业务流程&#xff0c;并展示一个实际案例。…...

【每日八股】复习 Redis Day5:集群(上)

文章目录 复习昨日内容缓存雪崩、击穿、穿透的问题描述及解决方案如何保证数据库和缓存的一致性普通方案进阶方案 如何保证缓存删除一定成功&#xff1f;针对业务一致性要求高的场景&#xff0c;如何确保缓存与数据库的一致性&#xff1f;如何避免缓存失效&#xff1f;如何实现…...

linux进程的复制和替换

Linux 进程的复制与替换 一、主函数参数 在 C 语言里&#xff0c;main 函数能够接收参数&#xff0c;其标准形式如下&#xff1a; int main(int argc, char* argv[], char* envp[]);argc&#xff1a;代表命令行参数的数量&#xff0c;为整数类型。argv&#xff1a;是一个字符…...

【质量管理】现代TRIZ问题识别中的功能分析——相互接触分析

在文章【质量管理】现代TRIZ中问题识别中的功能分析——组件分析-CSDN博客中我们知道了如何对产品进行组件分析&#xff0c;那么组件分析出来有什么作用呢&#xff1f;组件分析就是为了接下来相互接触分析使用的。 什么是相互接触 相互接触分析是功能分析的一部分&#xff0c;…...

一种快速计算OTA PSRR的方法(Ⅱ)

1.仿真验证 1.1仿真设置 1.1.1 Test-bench原理 1.1.2 管子参数设置 为了公平地比较性能&#xff0c;设置所有OTA 的输入晶体管M1和M2为相同的gm和偏置电流1uA。 具体晶体管宽长比设置参见5.参考资料中的论文2。 1.2仿真验证 1.2.1 CM OTA 1&#xff09;小信号参数 M1 M…...

【C++】通过红黑树封装map和set

前言&#xff1a; 通过之前的学习&#xff0c;我们已经学会了红黑树和map、set。这次我们要实现自己的map和set&#xff0c;对&#xff0c;使用红黑树进行封装&#xff01; 当然&#xff0c;红黑树内容这里就不在赘述&#xff0c;我们会复用红黑树的代码&#xff0c;所以先将…...

【Java IO流】字节输入流FileInputStream、字节输出流FileOutputStream

目录 0.前言 1.FileInputStream 1.1 概述 1.2 构造方法 1.3 成员方法 1.4 FileInputStream读取文件案例演示 2.FileOutputStream 2.1 概述 2.2 构造方法 2.3 成员方法 2.4 写入文本文件案例演示 3.FileInputStream FileOutputStream拷贝文件 0.前言 本文讲解的是…...

信息收集新利器:SSearch Chrome 插件来了

SSearch 下载地址 SSearch &#x1f623;用途 每次谷歌语法搜索时还得自己写&#xff0c;我想省事一点&#xff0c;弄了一个插件&#xff0c;先加了几个常用的语法&#xff0c;点击后会跳转到对应搜索页面&#xff0c;也可以直接在搜索框微调 后续也会加些其他语法 &#…...

【AI面试准备】AI误判案例知识库优化方案

面试题&#xff1a;建立内部知识库&#xff1a;收集AI误判案例训练领域专属模型。 在回答关于“建立内部知识库收集AI误判案例训练领域专属模型”的面试问题时&#xff0c;建议从以下结构化框架展开&#xff0c;既能体现专业性&#xff0c;又能展现解决问题的系统性和实际落地…...

从零开始讲DDR(8)——AXI 接口MIG 使用(1)

一、前言 在之前的系列文章中&#xff0c;我们已经讨论过了MIG ip的接口内容&#xff0c;配置方式和modelsim独立仿真相关的内容&#xff0c;因此&#xff0c;本文对于之前已经讨论过的相关内容只做简单描述&#xff0c;着重介绍AXI 接口MIG使用上与普通ui接口的不同之处。感兴…...

字符和编码(python)

位数&#xff1a;英文字符使用 1 个字节表示&#xff0c;中文字符通常使用 3 个字节。示例&#xff1a;汉字 “汉” 的 UTF-8 编码是 \xE6\xB1\x89。优点&#xff1a;兼容 ASCII&#xff0c;广泛用于网络传输和文件存储。 Python 中的字符串类型 在 Python 中&#xff0c;字…...

【STM32】定时器输入捕获

STM32 定时器输入捕获功能笔记 一、什么是输入捕获&#xff08;Input Capture&#xff09; 输入捕获是利用定时器的输入通道&#xff0c;在检测到信号电平变化&#xff08;如上升沿或下降沿&#xff09;时&#xff0c;立即将当前计数器的值捕获并保存到捕获寄存器&#xff08…...

spring-ai集成langfuse

1、pom文件 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation"http://maven.apache.org/POM/4.…...

SALOME源码分析: ParaVis

本文分析SALOME中ParaVis模块。 注1&#xff1a;限于研究水平&#xff0c;分析难免不当&#xff0c;欢迎批评指正。注2&#xff1a;文章内容会不定期更新。 一、核心组件 二、关键流程 三、FAQs 网络资料 SALOME Scientific visualisationPARAVIS Module - Architecture …...

Ubuntu 安装 MySQL8

在 Ubuntu 下安装 MySQL 服务&#xff0c;推荐使用 apt install 官方的 APT 仓库安装方式&#xff0c;这种方式最安全、最稳定、能自动处理依赖关系&#xff0c;也支持后续升级。不推荐在官网手动下载 .deb 包的方式。 配置 Ubuntu 服务器 1. 确认 Ubuntu 系统版本 使用如下命…...

MATLAB图像加密案例

下面是一个使用 MATLAB 编写的简单图像块置乱加密/解密程序,主要利用了函数来组织代码。 这个程序通过将图像分割成小块,然后根据一个密钥(用于随机数生成器种子)打乱这些块的顺序来实现加密。解密过程则使用相同的密钥恢复原始块顺序。 核心思想: 分块: 将图像划分为 …...

同构字符串(简单)

新建两个哈希表&#xff0c;构建s到t中的字母的映射以及t到s中的字母的映射。 class Solution {public boolean isIsomorphic(String s, String t) {Map<Character,Character> s2tnew HashMap<Character,Character>();Map<Character,Character> t2snew Hash…...

红米Note9 4G版拆开后盖操作细节

先把sim卡槽整个拔出 然后如下图做试&#xff0c;4个箭头的位置塞塑料片或者指甲插入&#xff0c;弄开&#xff0c;然后从图中右侧抠开&#xff08;左侧不行&#xff0c;有排线连着后面手机主板&#xff09; 如果不按照这种办法&#xff0c;会把后盖很多地方抠烂...

Qt通过QXlsx库文件写入到excl文件,读取excl文件

第一&#xff1a;下载QXlsx库文件 https://download.csdn.net/download/qq_32663053/90739425 第二&#xff1a;在Qt项目中引入QXlsx库&#xff0c;需要把QXlsx库文件放在项目文件夹下 第三&#xff1a;将tableview中的数据存入到excl文件 代码&#xff1a; void MainWindow…...

ESP32 在Platform Arduino平台驱动外部PSAM,进行内存管理

一&#xff0c;基本介绍 本文中主要介绍ESP32、ESP32S3系列单片机&#xff0c;基于Vscode Platform Arduino和Arduino框架下如何使用外部PSAM&#xff0c;以及必要的API调用函数进行内存分配和管理。 使用前提是开发板有外部PSRAM。 二&#xff0c;平台配置 2.1 Arduino平台 …...

【AI论文】WebThinker:赋予大型推理模型深度研究能力

摘要&#xff1a;大型推理模型&#xff08;LRMs&#xff09;&#xff0c;如OpenAI-o1和DeepSeek-R1&#xff0c;展示了令人印象深刻的长期推理能力。 然而&#xff0c;他们对静态内部知识的依赖限制了他们在复杂的知识密集型任务上的表现&#xff0c;并阻碍了他们生成需要综合各…...

Python爬虫基础总结

Python爬虫基础总结 一、爬虫概述 1.1 什么是爬虫 网络爬虫&#xff08;Web Crawler&#xff09;是一种自动浏览万维网的程序或脚本&#xff0c;它按照一定的规则&#xff0c;自动抓取互联网上的信息并存储到本地数据库中。 1.2 爬虫工作流程 ​​URL管理器​​&#xff1…...

如何构建跨平台可复用的业务逻辑层(Web、App、小程序)

从传统的Web应用到移动端的App&#xff0c;再到近年来快速崛起的小程序&#xff0c;用户的触点变得异常分散且多样化。这种多端并存的现状一方面为企业提供了更广阔的市场机会&#xff0c;另一方面也对开发团队提出了更高的要求&#xff1a;如何在不同平台间实现高效开发、降低…...

本地大模型编程实战(32)用websocket显示大模型的流式输出

在与 LLM(大语言模型) 对话时&#xff0c;如果每次都等 LLM 处理完毕再返回给客户端&#xff0c;会显得比较卡顿&#xff0c;不友好。如何能够像主流的AI平台那样&#xff1a;可以一点一点吐出字符呢&#xff1f; 本文将模仿后端流式输出文字&#xff0c;前端一块一块的显示文字…...

MySQL数据库上篇

#作者&#xff1a;允砸儿 #日期&#xff1a;乙巳青蛇年 四月初五 笔者好久没有更新。今天来写一下MySQL数据库的内容还是老样子分为上中下三篇来写&#xff0c;话不多说咱们直接进入正题。 什么是数据库 数据库是统一管理的、长期储存在计算机内非仍、有组织的相关数据集合…...

Webug4.0靶场通关笔记13- 第22关越权修改密码

目录 第22关 越权修改密码 1.打开靶场 2.源码分析 3.越权修改密码 &#xff08;1&#xff09;获取渗透账号 &#xff08;2&#xff09;越权修改aaaaa账号的密码 &#xff08;3&#xff09;修改aaaaa用户密码渗透成功 &#xff08;4&#xff09;水平越权修改mooyuan账号…...

Python 基于 lstm,cnn 算法的网络舆情可视化系统

大家好&#xff0c;我是Python徐师兄&#xff0c;一个有着7年大厂经验的程序员&#xff0c;也是一名热衷于分享干货的技术爱好者。平时我在 CSDN、掘金、华为云、阿里云和 InfoQ 等平台分享我的心得体会。 &#x1f345;文末获取源码联系&#x1f345; 2025年最全的计算机软件毕…...

【免费】2007-2021年上市公司对外投资数据

2007-2021年上市公司对外投资数据 1、时间&#xff1a;2007-2021年 2、指标&#xff1a;股票代码、统计截止日期、货币编码、货币类型、投资事件类型编码、投资事件类型、报告期末投资金额总计、占报告期对外投资总额的比例(%) 3、范围&#xff1a;上市公司 4、来源&#x…...

每天学一个 Linux 命令(33):uniq

每天学一个 Linux 命令(33):uniq 命令简介 uniq 是 Linux 系统中一个非常实用的文本处理命令,全称为 “unique”。它主要用于从已排序的文本文件中检测、过滤或统计重复的行。该命令通常与 sort 命令配合使用,是 Shell 脚本编程和日常文本处理中的常用工具之一。 命令语…...

WebRtc11:SDP详解

SDP规范 会话层&#xff08;全局&#xff09;媒体层&#xff08;局部&#xff09; 会话层 会话的名称和目的会话的存活时间会话中包含多个媒体信息 SDP媒体信息 媒体格式传输协议传输IP和端口媒体负载类型 SDP格式 由多个< type > < value > 组成一个会话级…...

51单片机驱动 矩阵键盘

连接方式为8-1顺序连接P1端口P10-P17&#xff0c;代码返回键值 0-15. // 矩阵键盘扫描 uchar key_scan(void) {u8 key_value 255;u8 row, col;// 设置P1.0-P1.3为输出&#xff0c;P1.4-P1.7为输入P1 0xF0; // 1111 0000if((P1 & 0xF0) ! 0xF0) { // 有按键按下delay_m…...

解决The‘InnoDB’feature is disabled; you need MySQL built with ‘InnoDB’ to have it

出现如下语句&#xff1a;The ‘InnoDB feature is disabled; you need MySQL built with ‘InnoDB to have it working&#xff1b; 是mysql配置文件禁掉了这个选项&#xff01; 关闭mysql数据库 在mysql的安装目录中找到my.ini文件 找到skip-innodb&#xff0c;在前面加上#号…...

大模型压缩技术详解(2025最新进展)

在2025年的AI技术格局中&#xff0c;像DeepSeek这样的顶尖模型开源已成为现实。那是否存在一种可行路径&#xff0c;让企业能够使用专注于自身领域的强力AI模型&#xff0c;同时大幅降低部署成本&#xff0c;仅需一张普通的4090显卡&#xff1f;本文将深入探讨两种主流的模型压…...

第 5 篇:红黑树:工程实践中的平衡大师

上一篇我们探讨了为何有序表需要“平衡”机制来保证 O(log N) 的稳定性能。现在&#xff0c;我们要认识一位在实际工程中应用最广泛、久经考验的“平衡大师”——红黑树 (Red-Black Tree)。 如果你用过 Java 的 TreeMap​ 或 TreeSet​&#xff0c;或者 C STL 中的 map​ 或 s…...

spring-- 事务失效原因及多线程事务失效解决方案

事务失效原因 类的自调用&#xff1a;直接调用本类的方法&#xff0c;没有通过代理对象来调用方法&#xff0c;代理对象内部的事务拦截器不会拦截到这次行为。则不可能开启事务 使用私有方法&#xff1a;因为spring的事务管理是基于AOP实现的&#xff0c;AOP代理无法拦截目标对…...

MLPerf基准测试工具链定制开发指南:构建领域特异性评估指标的实践方法

引言&#xff1a;基准测试的领域适配困局 MLPerf作为机器学习性能评估的"黄金标准"&#xff0c;其通用基准集在实际科研中常面临‌领域适配鸿沟‌&#xff1a;医疗影像任务的Dice系数缺失、NLP场景的困惑度指标偏差等问题普遍存在。本文通过逆向工程MLPerf v3.1工具…...