我的新代码出现编译错误。我找不到任何问题。我已经搜索了谷歌。任何帮助都会很棒。请参阅下面的代码和错误消息。
代码: http: //pastebin.com/cLprnCRz
错误消息: http: //pastebin.com/azkc9QLY
我的新代码出现编译错误。我找不到任何问题。我已经搜索了谷歌。任何帮助都会很棒。请参阅下面的代码和错误消息。
代码: http: //pastebin.com/cLprnCRz
错误消息: http: //pastebin.com/azkc9QLY
好吧,您的错误不在您的代码中,而是在您包含的文件中,该文件正在sha1.h
实现一个虚拟方法,Print.h
但返回类型错误:
在 sha1.h 中:
virtual void Sha1Class::write(uint8_t)
^^^^
在 Print.h 中:
virtual size_t Print::write(uint8_t)
^^^^^^
您的sha1
库可能是为不同版本的 Arduino 框架编写的。
错误很明显,正如它所说:
error: conflicting return type specified for 'virtual void Sha1Class::write(uint8_t)'
error: overriding 'virtual size_t Print::write(uint8_t)'
所以编译器在这里说:
“你在 Print.ha 中定义了必须重新实现给定类型的方法,当你重新实现它时,你给了它另一种类型。我尽力了,但真的,我不明白什么你要!”