如果缺少结构定义, auto 在 gcc 中无效,我感到有点困惑。 E.g:
0 struct foo;
1 typedef struct foo foo;
2 int test(foo* pFoo);
3 foo* pEvent = nullptr;
4 const auto var = test(pEvent);
在第4行,编译器抱怨它无法确定 var 是什么。自从我认为测试被宣布,它应该是一块蛋糕。我错过了什么或者这是gcc实现中的错误吗?
编辑:
对不起,我的不好。工具链使用的是古代/越野车gcc 4.4。强迫它使用4.6它就像一个魅力。