【发布时间】:2021-04-07 20:49:36
【问题描述】:
使用 g++,编译以下代码将返回error: ‘test’ was not declared in this scope。但是 Arduino C++ 编译器会 NOT 失败。为什么?我怎样才能让 gcc/g++ 像 Arduino 编译器一样提升函数?
void setup() {
test();
}
void loop() {}
int test() { return 1; }
长期以来我一直觉得,如果 Javascript、Perl 等可以提升函数,那么 C/C++ 预处理器允许这样做似乎是不合理的。
【问题讨论】: