error: no matching function for call to ros::NodeHandle::param()

news/2026/1/21 20:28:33/文章来源:https://www.cnblogs.com/zylyehuo/p/19513949

博客地址:https://www.cnblogs.com/zylyehuo/

系统版本:ROS1 noetic

image
image

原始版

nh.param("odom_topic", _odom_topic_, "/f_lio_localization_node/Odometry");
  • odom_topic 的类型是 std::string
  • "/f_lio_localization_node/Odometry" 的类型是 const char* (C 风格字符串)

修改版

// 显式告诉编译器 T 是 std::string
nh.param<std::string>("odom_topic", _odom_topic_, "/f_lio_localization_node/Odometry");

报错分析

为什么是 const char*?

在 C++ 中,直接在代码中写下用双引号括起来的内容(如 "/f_lio_localization_node/Odometry")时,编译器会将其视为一个字符串字面量。

数据类型:字符串字面量的原始类型在 C++ 中是 const char[](字符数组),但在函数传递时,它会自动退化(decay)为 const char*(指向常量字符的指针)。

非对象属性:const char* 是一个 C 风格的原始指针类型,而 std::string 是一个 C++ 类对象。

ros::NodeHandle::param 是一个模板函数

// 其声明形式类似于
template <typename T>
void param(const std::string& param_name, T& param_val, const T& default_val);

当编译器尝试解析代码时,它会进行以下对比:

变量 odom_topic:在 .h 文件中定义其类型为 std::string。因此,编译器认为模板参数 T 应该是 std::string。

默认值参数:传入了 "/f_lio_localization_node/Odometry",它的类型是 const char*。

冲突:模板推导要求 param_val 和 default_val 的类型 T 必须严格一致。编译器不会在推导模板参数的过程中自动把 const char* 转换成 std::string。

// 虽然在 unitree_control.yaml 中也定义了
odom_topic: "/f_lio_localization_node/Odometry"

但在 C++ 代码编译阶段,编译器只看在 nh.param(...) 中硬编码的那个默认值参数的类型

总结

编译器报错是因为它发现试图让一个 std::string 类型的变量和一个 const char* 类型的默认值共享同一个模板占位符 T,这在 C++ 的严格类型推导下是不允许的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/1196186.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大模型学习宝典:10个Agent实战项目+90天系统学习路径,助你轻松拿下AI产品经理面试

文章提供了大模型AI的90天系统学习路径&#xff0c;分为初阶应用(10天)、高阶应用(30天)、模型训练(30天)和商业闭环(20天)四个阶段&#xff0c;涵盖提示工程、RAG系统搭建、模型微调及商业部署等实战技能&#xff0c;帮助学习者从零掌握AI大模型技术&#xff0c;提升职场竞争力…

导师严选9个AI论文网站,MBA论文写作必备!

导师严选9个AI论文网站&#xff0c;MBA论文写作必备&#xff01; AI 工具如何重塑论文写作的效率与质量 在当前学术研究日益数字化的背景下&#xff0c;AI 工具正逐步成为 MBA 学生和科研工作者不可或缺的助手。尤其是在论文写作过程中&#xff0c;AI 技术不仅能够显著降低 A…

蓝凌EKP产品:关联机制浅析

在 EKP 系统中&#xff0c;“关联机制”是实现跨业务对象关联、文档互相关联的重要基础能力。本文将从实际项目落地角度&#xff0c;完整介绍关联机制的接入步骤、关键代码以及常见注意事项&#xff0c;帮助你一次性跑通整个流程。一、关联机制简介关联机制用于在主业务对象&am…

【故障诊断】基于WMSST结合MCNN-BiGRU-Attention的故障诊断研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…

【故障诊断】基于WMSST结合MCNN-BiGRU-Attention的故障诊断研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…

导师推荐9个AI论文网站,专科生轻松搞定毕业论文格式规范!

导师推荐9个AI论文网站&#xff0c;专科生轻松搞定毕业论文格式规范&#xff01; AI 工具让论文写作变得轻松高效 在当前的学术环境中&#xff0c;越来越多的专科生开始借助 AI 工具来辅助完成毕业论文。这些工具不仅能够帮助学生快速生成初稿&#xff0c;还能在格式规范、语…

2026成都最新清水房装修企业top5评测!服务深度覆盖金牛区、新都区、青羊区、成华区等地优质公司权威榜单发布,定义成都品质居住新标杆.

随着成都房地产市场的持续发展,清水房装修需求日益多元化,从刚需公寓到别墅大宅,业主对装修品质、环保标准与个性化设计的要求不断提升。本榜单基于环保性能、设计实力、工程质量、服务覆盖四大维度(四川大晶装饰新…

让LLM听懂指令!利用现有模型生成高质量合成数据进行微调

文章介绍如何利用现有强大LLM生成高质量合成对话数据微调目标模型&#xff0c;通过Disilabel开源框架实现&#xff1a;准备指令/问题&#xff0c;让多个候选LLM生成回答&#xff0c;用更强的"评委LLM"评估质量&#xff0c;选择最优回答与指令配对&#xff0c;形成高质…

【故障诊断的归一化判别图嵌入】输出包括 NDGE 的最终投影矩阵、不同维度的准确率和每个样本对不同故障模式的概率附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…

程序员收藏!35岁转行大模型开发完全指南:零基础也能学会,前景无限好

文章分析了35岁转行学习AI大模型的可行性、零基础学习路径及行业前景。35岁正值学习黄金期&#xff0c;零基础可通过在线资源和持续实践掌握技能。AI大模型开发作为技术热点&#xff0c;应用广泛&#xff0c;需求持续增长&#xff0c;掌握该技能能带来良好职业发展。文章提供7阶…

精通大数据领域Doris:高级操作技巧分享

精通大数据领域Doris:高级操作技巧分享 关键词:大数据、Doris、高级操作技巧、数据处理、性能优化 摘要:本文围绕大数据领域的Doris展开,旨在为读者深入介绍Doris的高级操作技巧。从背景知识入手,详细阐述Doris的核心概念与联系、核心算法原理及操作步骤,通过数学模型和公…

ubuntu设置CPU和GPU拉满

ubuntu设置CPU和GPU拉满CPU 拉满 sudo cpupower frequency-set -g performance GPU 功率 + 风扇 sudo nvidia-smi -pm 1 sudo nvidia-smi -pl <MAX_WATT> nvidia-settings -a "[gpu:0]/GPUFanControlState=…

2026固定式机械臂优质品牌推荐指南

2026固定式机械臂优质品牌推荐指南一、行业背景与筛选维度依据据《2026-2030年中国工业机械臂行业发展白皮书》数据显示,2026年国内固定式机械臂市场规模同比增长18.7%,矿山开采、建材生产、钢铁冶炼等行业的自动化升…

AI Agent框架宝典:11个顶级框架对比与实战指南,小白也能上手

本文全面介绍了11个最佳AI Agent框架&#xff0c;包括LangChain、AutoGen、CrewAI等&#xff0c;详细分析了各框架的特性、优势、劣势及应用场景。文章对比了开源与商业解决方案&#xff0c;提供了评估框架的标准和选择建议&#xff0c;并探讨了AI Agent领域的发展趋势。这些框…

Java科技栈五要素:JDK/JRE/JVM/Tomcat/JAR包的关系详解

Java科技栈五要素:JDK/JRE/JVM/Tomcat/JAR包的关系详解pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&…

【光伏、风力、电池】基于准对立气味代理优化(QOBL-SAO)莱维飞行变体(LFQOBL-SAO)算法的光伏、风力、电池系统优化应用研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。&#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室&#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真咨询…

【机器人路径规划】基于遗传、dijkstra、蚂蚁优化算法的机器人路径规划研究附Matlab代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…

从ChatGPT到自主AI Agent:企业级实战指南与避坑策略

文章对比了生成式AI与Agent AI的本质区别&#xff0c;指出前者是预测引擎擅长生成内容&#xff0c;后者有决策循环能主动执行多步骤计划。尽管市场炒作热烈&#xff0c;但多数企业仍处于Agent AI应用的早期阶段&#xff0c;许多项目难以突破概念验证。企业需要在组织变革和技术…

2025.12.27 作业 - P12673 「LAOI-8」Change

2025.12.27 作业 - P12673 「LAOI-8」Change题目描述 给定一个序列 \(A\) 和一个目标序列 \(B\),序列中的每个元素互不相同,每次操作可以选定一组 \(i,j\),满足 \(j-i=k\) 且 \(k\) 为正整数,交换 \(a_i,a_j\)。 保…

【焊接缺陷检测系统】基于深度学习的焊接缺陷检测系统研究附Python代码

✅作者简介&#xff1a;热爱科研的Matlab仿真开发者&#xff0c;擅长数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。 &#x1f34e; 往期回顾关注个人主页&#xff1a;Matlab科研工作室 &#x1f34a;个人信条&#xff1a;格物致知,完整Matlab代码及仿真…