这是一些使用 G++ (GCC) 版本 4.3.3 导致警告的内联代码。我只在 ARM 机器上的这个(4.3.3)旧 GCC 版本上遇到这个问题。在运行 GCC 4.5.2 的 x86 机器上,不存在此问题。不幸的是,我目前无法更新 ARM 机器,但我想知道是否应该关注以下错误...
// myclass.h
class MyClass {
public:
MyClass();
~MyClass() { Cleanup(); }
void Cleanup();
};
inline void MyClass::Cleanup() {
// do some minor cleanup here, GCC DOES inline this function
// with -Winline, I see that no non-inline warnings are thrown
}
问题是我收到警告:“在声明为内联之前使用了 void MyClass::Cleanup()”
这是我应该关注的警告吗?我一直只在函数定义中内联,基本上遵循这个(http://www.parashift.com/c++-faq/where-to-put-inline-keyword.html)“最佳实践”。
在此先感谢您的帮助。