c++ - 将文字字符串作为 const char * 参数传递会导致代码分析器错误
问题描述
我有重载功能
int put_message(int level, int sys_log_level, const char * inp_message);
int put_message(int level, int sys_log_level, const std::string &inp_message);
并调用此函数
put_message(0, LOG_ERR, "clock_gettime error");
代码已编译并且可以工作,但 Eclipse CDT 代码分析器说
无效参数 ' 候选者是: int put_message(int, int, const char *) int put_message(int, int, const ? &) '
我该如何解决这个错误?
更新:将 LOG_ERR 修改为 int(LOG_ERR) 后错误消失。我没有在标题中添加。添加解决问题。
解决方案
您丢失#include <string>
或与字符串类有关的东西
推荐阅读
- python - Discord.py - 当 B 发送回复 A 的原始消息的消息时,如何从 B 的消息中获取 A 的 ID?
- javascript - 为什么此代码使用 `removeEventListener` 似乎无法正确解除绑定关键事件?
- python-3.x - 有没有更好的方法来比较多个功能?
- java - 如果在 sonarqube 中声明后对 code2.java 中使用的字符串进行规范化,请从 Code1.java 检查
- java - 将一种对象类型分配给另一种对象类型时,Java 变量如何工作?
- r - 在 R 中跨不同数据帧替换值
- c - 检查整数的十进制表示是否为回文
- c# - 如何添加到惰性列表
- c# - 从 .NET 应用程序触发 MS Teams 调用
- javascript - [...Array(page)].map((x, i)] 等价于 Python