昱卿本卿
Preview Image

cmake IMPORTED 用法

在 cmake 中, IMPORTED 目标是指那些在项目外部预先构建好的库或可执行文件。通过将这些库或可执行文件作为导入的目标引入,可以在项目中使用它们,就像使用项目内构建的目标一样。这样做的好处是可以方便地重用已有的二进制文件,而无需从源代码重新构建它们,这对于依赖于第三方库的项目尤其有用。 举例 目录结构如下 ├── your_lib │ ├── include │ │ ...

Preview Image

c++17 的共享锁 std::shared_mutex

std::shared_mutex 是 c++17 引入的一个同步机制类,它允许多个线程同时读取共享数据,但在写入数据时要求独占访问权。这种读写锁的设计旨在提高在多线程环境下对共享数据进行读取操作时的效率,因为它减少了锁的竞争,允许更高的并发度。当某个线程需要写入时,它会等待所有读操作完成后才进行,确保数据一致性和线程安全。 示例 #include <any> #includ...

Preview Image

怎样愉快地阅读 github 上的源码?

每次畅游 github 的时候,总感觉不太尽兴,总感觉差点什么,下面给你支个阅读代码的小妙招,希望可以增加你乐趣。 下图是我们打开 github 仓库阅读源码时的界面。 用起来极其的不方便,我们可以采用 vscode 在线编辑器来阅读源码,绝对是不一样的体验。直接在上图的界面 按下键盘的 . 按键就自动切换到 vscode 在线编辑器了(或者把 https://github.xxxxx 改...

Preview Image

如何使用 catkin 构建 ROS1 的多个功能包

Catkin 是一个用于构建 ROS 软件包的工具。它是基于 CMake 构建系统的扩展,旨在简化 ROS 软件包的构建和管理。使用Catkin,开发人员可以更轻松地构建、测试和部署ROS软件包。Catkin 提供了一种结构化的方式来组织 ROS 软件包,并支持依赖管理、构建配置和自定义构建类型等功能。 使用 1、创建工作空间 mkdir catkin_ws # 工作空间的名字不固定,...

© ziqing. 保留部分权利。

纸上得来终觉浅,绝知此事要躬行!