自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(183)
  • 收藏
  • 关注

原创 【cmake】cmake学习阶段二:核心肌肉 —— 目标与链接 (Day 2-3)

这行说明:我要编译一个名字叫main_exec的可执行文件,源文件是main.cpp。

2025-11-25 16:45:54 420

原创 【cmake】快速学习计划

这份“系统快速学习计划”旨在帮你从入门进阶到能处理复杂工程。只要坚持“Modern CMake”的写法,你的学习曲线会平滑很多。

2025-11-25 15:53:01 379

原创 【cmake】add_subdirectory的使用

就像是你在构建系统里**“开地图”**。它把新的文件夹纳入构建范围,让你可以把复杂的项目拆分成一个个小的、独立的模块去管理,同时保证生成的 Target 全局可用。

2025-11-25 15:43:29 433

原创 【c++】两个类/对象双向关联的理解

两个对象互相包含”在设计上叫双向关联在实现上通常是「指针/引用互相指向对方」,不能直接互相包含「值成员」,否则会变成无限嵌套,编译都过不了。

2025-11-19 11:18:29 283

原创 【c++】如何更加深入的理解c++中的多态?

public:抽象类 = “所有滤镜都能调用的统一接口”把行为延迟到运行时决定主程序不用知道你具体怎么干,它只要求你“会干这件事”。程序只依赖抽象(如 Filter),不依赖具体实现(BlurFilter 等)新增功能时,不改旧代码,只加新类,让系统不断扩展而不会腐败串起来再看一遍(逻辑链)

2025-11-19 10:27:56 911

原创 【git】docker中无法进行git命令行补全

看起来你是想在 Docker 里的任何补全包。,或在镜像构建时把脚本“塞进去”(无需联网)。

2025-10-30 20:38:32 419

原创 【ubuntu】ubuntu系统如何快速删除当前用户的配置

是的,。这是一种非常彻底的操作,通常用于解决严重的用户配置文件损坏或忘记密码后希望重置用户环境的场景。

2025-10-30 20:12:44 632

原创 【docker】bashrc文件的合理配置

bashrcdocker中ubuntu的bashrc与宿主机中的bashrc有没有办法单独控制,现在我的docker中的bashrc使用的是宿主机的bashrc之所以出现「容器里的.bashrc等于宿主机的.bashrc」,通常是因为把宿主机的$HOME(甚至直接把~/.bashrc)作为 volume 挂进了容器。把这个关系改掉或加上条件判断,就能实现「单独控制」。

2025-10-29 18:59:38 316

原创 【GUI】本地电脑弹出远程服务器的软件GUI界面

我们会建立一条安全的隧道,将 GUI 程序的“显示”信号从最深处的 Docker 容器,一步步转发出来,最终送达您本地的 Windows 电脑进行渲染。在您的本地 Windows 11 电脑上,通过 MobaXterm 软件,显示一个运行在远程 Ubuntu 主机的 Docker 容器内部的图形用户界面(GUI)程序。在这一步,我们配置远程主机上的 SSH 服务,允许它转发 X11 的图形请求。在这一步,我们确保您的电脑已经准备好接收并显示来自远程的 GUI 数据。: 在容器内运行 GUI 程序,提示。

2025-10-29 16:05:55 989

原创 [ssh]系统重装后,如何重新设置window免密登录远程linux服务器

您遇到的 SSH 错误是一个安全提示,表明您尝试连接的远程主机root-C-001的主机密钥与您本地计算机上记录的密钥不匹配。

2025-10-28 20:16:39 424

原创 【c++】this指针学习与理解

概念含义this是什么指向当前对象的隐藏指针类型存在范围所有非静态成员函数中用途访问当前对象的成员(const 成员函数中类型变为。

2025-10-24 17:19:25 299

原创 【python】argparse库学习

argparse是Python标准库中一个非常强大且推荐使用的模块,专门用于解析命令行参数和选项,让您可以轻松地为您的Python脚本创建用户友好的命令行界面(CLI)。当您的程序需要从终端运行时接收输入时,argparse-h--helpargparse。

2025-10-23 16:04:27 375

原创 误差优化方向-1

下面给出,基本不改变你的控制结构,但能把圆弧段的 |e1| 明显压低。按顺序做就行(每条都是“可以单独回退”的独立改动)。

2025-10-22 21:20:05 612

原创 【c++】当一个子类覆写(override)了父类的函数后,那么这个子类的下一级子类会继承哪个版本?

子子类继承的是其直接父类中最终生效的函数版本,如果该函数在父类中已经被覆写,那么子子类继承的就是这个被覆写后的版本。

2025-10-21 15:05:13 418

原创 系统地总结一下Python中关于“遍历”的知识点

遍历需求推荐方法语法示例遍历列表/元组/字符串直接for循环遍历字典的键和值.items()遍历时需要索引并行遍历多个列表zip()循环固定次数range()边遍历边创建新列表列表推导式掌握了以上这些知识点,就能够应对Python中绝大部分的遍历场景了。

2025-09-12 23:33:04 746

原创 快速理解并记住Python中的可变与不可变对象

要快速理解并记住Python中的可变与不可变对象,关键在于掌握其核心区别,并对常见数据类型进行分类记忆。

2025-09-12 23:27:07 521

原创 proble1111

该程序是一个非常好的起点,但其核心的遮蔽判断逻辑错误和距离计算偏差导致其无法找到问题的真正最优解,并且计算出的“有效遮蔽时长”会远高于实际值。修改的优先次序建议如下:修正函数中的遮蔽判断逻辑,确保其计算的是“完全遮蔽”时间。修正函数,使其正确计算点到“线段”的距离。调整无人机速度下限,并移除fun函数中对tau的不合理约束。增加对圆柱体顶部和底部的采样,以获得更精确的结果。在完成这些关键修改后,您的模型将能够更准确地为问题2找到最优的投放策略。好的,当然可以。

2025-09-05 22:28:32 644

原创 【git】 撤销revert一次commit中的某几个文件

它首先对整个 commit 执行撤销操作,但不立即提交,然后您再手动选择只保留针对特定文件的更改。执行此命令后,指定的文件在您的工作目录中就会被恢复到之前的版本,并且该更改会自动被添加到暂存区 (staging area)。是的,您可以撤销(revert)某个 commit 中对单个文件的更改,但这不能通过。中所有文件的更改都反向应用到您的工作目录和暂存区,但不会自动创建新的 commit。查看提交历史,找到您想要撤销文件更改的那个 commit 的哈希值。的父提交中获取文件内容,并更新您的工作目录。

2025-08-19 23:21:49 671

原创 【GUI】ssh实现gui本地可视

这使得您可以在Windows上直接运行和查看Ubuntu服务器上的图形化应用程序。在Windows客户端,您需要两样东西:一个X Server程序来接收和显示图形界面,以及一个支持X11转发的SSH客户端。现在,您需要使用一个SSH客户端来连接到您的Ubuntu服务器,并启用X11转发。当您在SSH终端中输入这些命令后,稍等片刻,这些应用程序的GUI界面就会以独立窗口的形式出现在您的Windows桌面上。您需要在Ubuntu服务器上启用X11转发功能,这通常是通过修改SSH服务的配置文件来完成的。

2025-08-15 19:03:35 746

原创 C++ 排序指南

假设有一个Student结构体,我们想按分数对其进行排序。int score;// 自定义比较函数(可作为 Lambda 表达式或独立函数)// 按分数升序排序{"David", 92} // Bob 和 David 分数相同// 使用自定义比较函数对学生进行排序std::cout << "按分数排序后的学生: " << std::endl;/* 输出:Alice: 85Bob: 92David: 92*/// 假设分数相同,按名字字母顺序排序// 分数不同时按分数排序。

2025-08-14 22:51:10 391

原创 【python】import与include的区别

特性C++#includePythonimport本质预处理器指令,在编译前执行运行时可执行语句操作文本复制粘贴模块对象的加载、初始化和引用命名空间不创建命名空间,需配合namespace关键字管理自动创建以模块名命名的命名空间重复处理需手动使用“头文件卫士”或防止重复包含内置缓存机制(),自动防止重复加载引入内容通常是函数、类的声明(在.h文件中)包含完整定义和实现的对象(模块)结论总而言之,C++的#include。

2025-08-10 12:16:19 1038

原创 【python】元组的操作

所有读取、查询、遍历操作拼接、重复(创建新元组)解包、切片比较、转换修改元素:t[0] = 5❌添加元素:t.append()❌删除元素:del t[0]❌排序原地:t.sort()❌元组的不可变性是它的核心特征,这使得元组可以作为字典的键,也保证了数据的安全性。

2025-08-10 11:42:02 481

原创 什么是ros功能包和ros节点

包含关系。

2025-08-08 23:43:41 280

原创 将本地commit已经push到orgin后如何操作

你推送到了哪个分支?我应该怎么做?命令示例我自己的、没有其他人用的个人分支可以。先在本地,然后使用强制推送。共享的、有其他人协作的分支(如maindevelopmaster绝对不行!应该创建一个新的修复提交,然后正常推送。记住这个经验法则:一旦push到公共分支,就把它当成是不可变的。不要尝试去修改它,而是通过新的提交来补充它。

2025-08-01 18:29:40 1068

原创 c++函数返回值完整总结

T// 规则1:完整表达式结束时析构// 临时对象在分号处析构// 规则2:引用延长生命周期// 临时对象活到ref作用域结束// 规则3:赋值时立即拷贝并析构临时对象// 临时对象拷贝给obj后立即析构// 规则4:链式调用中的中间临时对象// method1返回的临时对象在整个表达式结束时析构。

2025-07-30 23:50:31 1162

原创 cmake项目基本demo

【代码】cmake项目基本demo。

2025-07-30 23:48:09 283

原创 wsl安装到非c盘

1. 创建自定义安装脚本# 创建PowerShell脚本 install-wsl-custom.ps1# 创建目录# 下载并导入# 解压# 导入WSL# 清理临时文件。

2025-07-30 21:17:18 870

原创 右值引用与移动语义

在C++中,每一个表达式要么是左值,要么是右值。这是理解右值引用的基础。左值 (Lvalue):可以看作是“有名字、有固定地址”的对象。你可以对它取地址(使用运算符),并且它在表达式结束后仍然存在。简单来说,它像一个有门牌号的房子,你可以反复访问它。例子// x 是一个左值// s 是一个左值// p 是一个左值右值 (Rvalue):可以看作是“临时的、匿名的”对象。它通常是表达式计算过程中产生的中间结果,在表达式结束时就会被销毁。你不能对它取地址。简单来说,它像是你计算2+3时脑海里闪过的那个5。

2025-07-29 14:53:15 986

原创 ubuntu安装teams解决方法

鉴于微软的政策变化,

2025-07-24 20:07:35 1303

原创 在 Ubuntu 20.04 上轻松安装和使用中文输入法

安装完成后,您应该可以在屏幕右上角的系统托盘看到一个键盘图标或语言缩写。点击该图标,您就可以在英语和“汉语 (Intelligent Pinyin)”之间切换。两者都是成熟的输入法框架,您可以根据个人喜好选择其一进行安装和配置。IBus (Intelligent Input Bus) 是 Ubuntu 默认的输入法框架。Fcitx 是一个功能强大的输入法框架,受到许多用户的喜爱。配合谷歌拼音输入法,可以提供流畅的输入体验。添加成功后,您就可以通过点击系统托盘的键盘图标或使用快捷键。Ctrl + 空格键。

2025-07-24 20:07:03 718

原创 在 Ubuntu 20.04 上轻松安装和使用中文输入法

安装完成后,您应该可以在屏幕右上角的系统托盘看到一个键盘图标或语言缩写。点击该图标,您就可以在英语和“汉语 (Intelligent Pinyin)”之间切换。两者都是成熟的输入法框架,您可以根据个人喜好选择其一进行安装和配置。IBus (Intelligent Input Bus) 是 Ubuntu 默认的输入法框架。Fcitx 是一个功能强大的输入法框架,受到许多用户的喜爱。配合谷歌拼音输入法,可以提供流畅的输入体验。添加成功后,您就可以通过点击系统托盘的键盘图标或使用快捷键。Ctrl + 空格键。

2025-07-24 17:25:30 952

原创 【Git】git的回退功能

用一次新的、正确的提交,来“纠正”一次旧的、错误的提交。

2025-07-11 13:39:13 1575

原创 【ros】如何查看是否安装了ROS

这样我可以提供更具体的检查方法。

2025-07-08 14:27:07 1359

原创 【ssh】在 Windows 上生成 SSH 公钥并实现免密登录 Linux

在 Windows 上生成 SSH 公钥并实现免密登录 Linux,可以使用ssh-keygen命令,这是 Windows 10 和 Windows 11 中默认包含的 OpenSSH 工具的一部分。

2025-07-07 09:49:19 1431

原创 如何理解面向对象编程与面向过程编程的区别?

两种方式都能解决问题,但面向对象更接近人类思维,代码更易理解和维护。选择哪种方式主要看问题的复杂度和团队的需求。:将现实世界中的事物抽象成对象,每个对象包含数据(属性)和操作数据的方法,通过对象之间的交互来解决问题。:将复杂问题分解成若干个简单的函数或过程,按照执行顺序调用这些函数来解决问题。

2025-07-06 12:56:19 312

原创 状态机学习

transition condition(转移条件) :也叫做Event(事件),在某一状态下,只有达到了transition condition(转移条件),才会按照状态机的转移流程转移到下一状态,并执行相应的动作。transition(转移) :一个状态接收一个输入执行了某些动作到达了另外一个状态的过程就是一个transition(转移)。状态机中有几个术语:state(状态) 、transition(转移) 、action(动作) 、transition condition(转移条件)。

2025-07-06 12:42:08 354

原创 (继承的优势?)继承提升了代码复用但增加了代码理解的难度

承认问题:继承确实会带来代码阅读上的“跳转”,这是为了实现抽象和多态付出的代价。理解收益:这种设计的核心收益是多态,它能构建出松耦合、易扩展的系统,这是简单的代码复用无法比拟的。解决方案技术上:依赖现代IDE的强大功能(如 F12 跳转)。规范上:使用override和final关键字明确意图。设计上:深入理解“组合优于继承”,在不是严格 “is-a” 的场景下使用组合,能让代码更清晰。

2025-07-06 12:14:55 787

原创 命令行积累

vscode报错Extension host terminated unexpectedly。

2025-07-02 17:23:12 136

原创 ubuntu24.04中中文输入法设置

Ubuntu22.04安装Fcitx5中文输入法(详细)

2025-07-02 16:51:47 245

原创 【无标题】

https://blog.csdn.net/hsyxxyg/article/details/137676045

2025-07-02 16:50:42 112

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除