我有重载函数
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 代码分析器说
Invalid arguments ' Candidates are: int put_message(int, int, const char *) int put_message(int, int, const ? &) '
我该如何解决这个错误?
更新: 将 LOG_ERR 修改为 int(LOG_ERR) 后错误消失。 我没有在标题中添加。 添加解决了问题。
最佳答案
你错过了#include <string>
或者与字符串类相关的东西
关于c++ - 将文字字符串作为 const char * 参数传递会导致代码分析器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56472183/