让Vim进行语法检查boost库

3
我是一名相对新手的程序员,最近开始使用boost。在成功地将库与cmake链接后,我注意到我的vim(我想是syntastic插件)可以很好地突出语法错误。但自从我开始包含boost库以来,它就停留在#include语句处(没有这样的文件/目录),并且无法显示文件中的任何语法错误。我已经到处搜索,但无法找到解决方案,允许我在编译阶段之前检查坏代码的语法。任何帮助都将不胜感激。 我无法发布截图(评分太低),但会发布代码供参考。
#include <iostream>
#include <boost/regex.hpp>     <--------------syntax error (though it compiles fine)
#include <algorithm>

using namespace std;

void testMatch(const boost::regex& ex,const string st){
  cout<<"Matching" <<st <<endl;
  if(boost::regex_match(ex,st)){
    cout<<"matches"<<endl
  }
  else cout<<"oops"; }

  void testSearch(const boost::regex& ex, const string st){
    cout<<"Searching"<<endl;





  }

我的回答解决了你的问题吗? - cdk
1个回答

3
如果您正在使用Syntastic插件,请查看文件中的内容。
syntastic/syntax_checkers/cpp.vim

有很多特定于语言的选项可以设置,我认为你需要的是

let g:syntastic_cpp_include_dirs=['path/to/boost/files']

这个让语法检查器知道除了默认文件夹外,还有其他地方可以查找包含的文件。


谢谢,我不能确定是否完全是这个原因,因为我使用apt-get下载了boost(旧版本),这样问题就得到了解决。不过我还是加上了这行代码。 - Maelstorm

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接