此问题通常是由于在头文件和代码文件中都定义了相同的函数而引起的。解决方法是将函数定义放在代码文件的实现部分中,然后在头文件中声明函数即可。
例如,在代码文件(.cpp)中定义以下模板函数:
template
void printValue(T value) {
Serial.print("The value is: ");
Serial.println(value);
}
在代码文件中,将函数声明添加到头文件(.h)中:
template
void printValue(T value);
这将告诉编译器该函数存在,但它的实现将在代码文件中找到。这应该解决您遇到的问题。
上一篇:Arduino程序输出结果不良”