我从Galileo迁移到Mars版本的Eclipse时遇到了很多问题。
我目前正在使用多个项目,每个项目都对应于我最终产品的特定层。 每个项目都会输出多个库。
问题在于:
1)正如我的另一个问题所指出:Eclipse c++ class generation formating,如果我在项目属性中添加当前项目 - > C ++ General - >路径和符号 - >包括',任何自动生成的文件都带有尖括号,包括预处理器指令
2)如果删除上面添加的包含路径,则标题自动完成不会使用相对于项目根目录的路径(包括尖括号和引号)。带有相对于当前文件的路径的带引号的表单仍然有效。
由于我使用多个输出lib项目,我需要使用尖括号包括样式。
有没有办法解决这个问题?
答案 0 :(得分:1)
AFAIK你已经在CDT的新类向导中遇到了限制。 路径和符号 - > Includes 应该与您在命令行上执行的操作完全匹配,以便索引器按预期工作,即为您提供预期的完成等。因此,您应该将项目根目录列为包含目录。索引。
这意味着您案例中的类向导将始终使用<>根据该代码中的逻辑为您的包含。不幸的是,我不认为CDT的当前代码库中有任何内容可以帮助您同时解决两个问题。我猜想,因为索引器的丢失工作完全失败,所以让类向导按原样工作的成本会超过。
如果让向导在你的情况下做正确的事情的价值足够高,我建议修复它。 A"简单"改为NewClassCodeGenerator.getHeaderIncludeString()应该可以解决问题。
答案 1 :(得分:0)
我终于找到了解决问题的方法:
使用第1点)配置
转到'窗口 - >偏好 - > C / C ++ - >代码风格 - >代码模板'
转到'文件 - > C ++源文件'并编辑测试和源模板并替换:
${includes}
人:
#include "${file_base}.h"