使用非常简单的源和头文件设置(main.cpp,callbacks.h和callbacks.cpp),我收到一条错误消息:Undefined reference to "error_callback(int, char const*)"
。似乎有些人遇到了同样的问题,但情况并非如此简单,这才真正让我失望。
以下是文件:
的main.cpp
#include <stdio.h>
#include "callbacks.h"
int main(void){
char er[] = "Error.";
error_callback(1, er);
return 0;
}
callbacks.h:
#ifndef CALLBACKS_H
#define CALLBACKS_H
void error_callback(int error, const char* description);
#endif // CALLBACKS_H
最后是callbacks.cpp:
#include <stdio.h>
#include "callbacks.h"
void error_callback(int error, const char* description){
fprintf(stderr, "Error: %s\n", description);
}
我无法想象一个更简单的头文件设置 - 但是出了点问题。我99.9%肯定我已经正确管理了标题和源文件。
修改
似乎这是IDE代码块的问题。源文件将显示在目录中,即使它们未在项目中正确链接。再次手动添加每个文件解决了这个问题。