我正在使用Eclipse Indigo和Android/NDK混合项目.我添加了C++性质,几乎所有东西都在工作.自动构建工作; 也就是说,当我编辑文件时,调用ndk-build并成功完成 - 没有构建错误.鼠标悬停代码辅助工作(小窗口弹出有关该功能的信息).如果我将光标放在包含行并按F3,相关的头文件打开(根据我的配置而不是我期望的那个,但是相关的一个 - 可能是一个线索?).
如果我在.cpp文件中选择以下行,则会打开$ NDKROOT/platform/android-3/arch-arm/usr/include/ctype.h:
#include
(isdigit在此文件中定义)
但是,Eclipse坚持认为isdigit没有定义.我已经阅读了许多帖子,建议静态分析器或索引器都应该受到指责,但我已经尝试了许多建议的解决方案无济于事.
如果我添加如下所示的行,则错误消失,鼠标悬停代码帮助该功能工作:
extern int isdigit(int);
同样,这不是链接器错误或编译器错误 - ndk-build完成且没有错误.这是日食里面的东西.谢谢参观!
编辑:我现在认为这是一个代码分析问题.更好的解决方案是编辑代码分析选项以使"无法解析功能"成为警告而不是错误.这样您可以在"问题"视图中看到警告,但继续工作.如果函数真的丢失了,编译器会告诉你!我还有一个新理论,问题在于符号链接后的代码分析器,因为所有"缺失"函数都在符号链接的包含文件中.会喜欢这个理论的任何意见.