首页 > 解决方案 > 将文字字符串作为 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) 后错误消失。我没有在标题中添加。添加解决问题。

标签: c++eclipse-cdtcode-analysisinvalid-argument

解决方案


您丢失#include <string>或与字符串类有关的东西


推荐阅读