03 2024 档案
摘要:`git pull`和`git fetch`都是Git版本控制系统中用于与远程仓库交互的命令,但它们在操作和结果上有一些关键的区别: 1. **操作内容**: - `git fetch`:这个命令仅仅下载远程仓库的更新信息(即远程分支的最新提交),并将这些更新保存到本地仓库的远程分支跟踪信息中。它不
阅读全文
摘要:C++链接器是一个编译器工具,用于将编译器生成的目标文件(通常是对象文件)链接在一起,以生成可执行文件或共享库。在C++编程中,链接器负责解析函数和变量的引用,并将它们关联到正确的定义位置。 链接器的主要任务包括: 1. **符号解析**:解析目标文件中使用的函数和变量的符号引用。当编译器编译源代码
阅读全文
摘要:在ROS 2中,您可以通过编写自己的自定义消息来扩展消息类型。以下是如何创建自定义消息的一般步骤: 1. **创建消息文件夹**:在功能包下创建msg的文件夹 2. **编写消息文件**:在`msg`文件夹内创建一个`xxx.msg`文件,命名为所需的消息类型,例如`MyCustomMsg.msg`
阅读全文
摘要:weak_ptr 可以解决循环引用问题的主要原因在于它不会增加对象的引用计数,从而不会导致对象无法被销毁。 在循环引用中,两个或多个对象相互持有对方的 shared_ptr,导致对象的引用计数始终不为零,即使程序不再使用这些对象,它们也无法被销毁,从而造成内存泄漏。 weak_ptr 的引入可以打破
阅读全文
摘要:C++: 面向对象和泛型编程:C++ 是一种多范式编程语言,支持面向对象编程(OOP)和泛型编程(Generic Programming)。 性能:C++ 是一种系统级编程语言,注重性能和内存管理。它提供了直接的内存访问和指针操作,使得程序员可以更精细地控制内存和计算资源。 灵活性:C++ 允许程序
阅读全文
摘要:T-Box(Telematics-Box)和 CAN(Controller Area Network)设备是在汽车领域中常见的两种不同类型的设备,它们有着不同的功能和应用场景。 T-Box(远程信息服务系统): T-Box 是一种车载终端设备,通常用于提供车辆远程信息服务和连接车辆到云端的功能。 T
阅读全文
摘要:1 根据can_port_num创建socketcan_raw的指针 2 判断比特率,设置比特率大小 3
阅读全文
摘要:C++标准库中提供了诸如 int16_t、uint64_t 这样的固定大小的整数类型,主要是为了确保在不同平台上的整数数据类型的大小是一致的,以保证程序的可移植性和可靠性。这些固定大小的整数类型通常在需要确切的位数表示整数值时特别有用,例如在与硬件或网络通信中进行数据交换时。 硬件相关性:不同的硬件
阅读全文
摘要:ESA:紧急转向辅助 实时监测前向、侧向和侧后方路况,在碰撞危险情况下辅助驾驶转向 AEB:自动紧急制动 自动紧急制动系统能够监测车辆前方的障碍物,并在检测到碰撞风险时自动进行制动以减少碰撞的严重程度或避免碰撞。 ELKA:紧急车道保持 在面临驶出车道与同向或对向车辆有碰撞危险时,系统介入施加转向力
阅读全文
摘要:ROS 2中自定义消息(Custom Messages)的作用是允许开发者定义自己的消息类型,以满足特定应用程序的需求。ROS消息是ROS中用于在节点之间传递数据的基本通信单元,它们描述了节点之间传递的数据结构和类型。 自定义消息的作用包括但不限于以下几点: 1. **适配特定应用需求**: 自定义
阅读全文
摘要:CICD是持续集成(Continuous Integration)和持续交付(Continuous Delivery)的缩写。它是一种软件开发实践,旨在通过自动化软件构建、测试和部署的流程来加速应用程序的交付周期。持续集成指开发人员频繁地将代码合并到共享存储库中,并通过自动化构建和测试流程来验证代码
阅读全文