首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >XCode 4:静态分析头文件

XCode 4:静态分析头文件
EN

Stack Overflow用户
提问于 2011-10-26 07:44:35
回答 1查看 308关注 0票数 1

我有一个C++项目(GNU风格,带有Makefile),我想使用XCode作为我的集成开发环境,因为我想使用自动完成和实时检测问题的Clang功能。

为此,我创建了一个新的项目->命令行工具,然后导入了所有文件。如果我继续编辑一个.cpp文件,XCode会检测到实时问题(如果我写的是假代码,就会给我一个错误)。但是,同样的方法不适用于我的.h文件。有趣的是,如果我将这些头文件包含在我的某个.cpp文件中,它似乎可以工作。

我如何才能解决这个问题,而不需要包含来自源文件的头文件?此外,我不确定这种创建项目(命令行工具)的方式是否正确。我真的只想使用XCode进行自动完成和问题检测,我不想通过XCode构建它(运行"make“就足够了)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-10-26 13:13:04

只需为您的项目创建一个“翻译”文件。这基本上是一个.c、.cpp、.m等文件,其中包含您想要索引的头文件。

潜在的问题是Xcode实际上没有足够的上下文来索引世界(或它导航到的任何文件)。标头的单一索引表示不正确。这可能看起来很愚蠢,但当你仔细考虑它时,它是有意义的,因为每个目标都有不同的构建设置,而单一的转换不会正确地应用这些设置。

Xcode4.0按照你想要的方式做了(基本上,所有的东西都是基于当前项目的构建设置建立索引的),但这是错误的,在非常重要的项目中是非常不可用的,特别是在具有不同构建设置的项目中。例如:它可能会应用错误项目的前缀标题,或者不知道如何正确地构造包含图,这样它就会在标题上抛出错误(在某些情况下)。

这样做的一个有益的副作用是,在真正开始完整的构建之前,您的转换文件可以用于对所包含的文件进行快速的非正式检查。实际上,我在库中有用于此目的的转换文件(并验证依赖/包含是否正确)。

如果你真的不喜欢这个翻译文件,你可以跳回Xcode4.0或者试试MacVim的clang_complete。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7897150

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档