编译器报告参数列表错误,同时在下一句中说函数是一个未解析的外部符号可能是因为函数的声明和定义之间存在不一致。
解决方法如下:
示例代码:
// 函数声明
void myFunction(int param1, int param2);
// 函数定义
void myFunction(int param1, int param2) {
// 函数体
}
示例代码:
// 函数声明
void myFunction(int param1, int param2);
int main() {
// 函数调用
myFunction(10, 20);
return 0;
}
// 函数定义
void myFunction(int param1, int param2) {
// 函数体
}
示例代码:
// myFunction.h 头文件
#ifndef MYFUNCTION_H
#define MYFUNCTION_H
void myFunction(int param1, int param2);
#endif
// myFunction.cpp 文件
#include "myFunction.h"
void myFunction(int param1, int param2) {
// 函数体
}
// main.cpp 文件
#include "myFunction.h"
int main() {
// 函数调用
myFunction(10, 20);
return 0;
}
通过检查函数的声明和定义,确保它们一致,以及在需要调用函数的代码中正确地包含函数的定义,可以修复编译器报告的参数列表错误和未解析的外部符号错误。
上一篇:编译器使用的双精度表示的明确规定
下一篇:编译器说他做了,但他没有做