这是我的C ++源代码的一部分。
int Serial::getc() {
return std::getchar();
}
编译时,我收到此错误:
In file included from Serial.cpp:2:0:
Serial.cpp:9:13: error: no ‘int Serial::_IO_getc()’ member function declared in
class ‘Serial’
int Serial::getc() {
^
我该怎么办?似乎我正在尝试重载使用宏实现的函数,并且我的重载函数的名称已被替换。
答案 0 :(得分:0)
您可以#undefine
宏,但请注意,您将无法在后续源代码中使用它。
使用宏无法覆盖自身。
答案 1 :(得分:0)
是的,getc是您的(“标准”)库中的一个宏。更好的是不要将它用作你自己的函数的名称...更好的是它不是一个宏(但这需要修改库)。
(你可以试试“mygetc”)......