去掉Visual Studio 2005的IntelliSense功能

来源:互联网 发布:电信宽带发现代理软件 编辑:程序博客网 时间:2024/05/01 09:08

去掉Visual Studio 2005IntelliSense功能

 

VSIntelliSense功能类似其他IDE中的auto-completion,也就是能够自动补全,不过和VIEmacs中的auto-completion不一样,IntelliSense比较Intelligent,根据编程语言的语法来谈出备选填,比如有下面的code

    class Peon {

     public:

      void Work();

    };

 

    class Warrior {

     public:

      void Wallop();

    };

 

void foo() {

         Peon p;

         p.W

在输入"p.W"之后,使用VIautocompletion,只是把可以用的W开头的词全拿来作为备选项,这样WorkWarriorWallop都是,其实p是一个Peon类型的变量,后面不可能是Warrior或者Wallop,但是IntelliSense可以根据语法排除掉这两个干扰项。

 

这本来是个不错的功能,但是对C++这样的语言,需要语法分析源代码,每更改一次code都有可能引发IntelliSense更新.ncb文件,而IntelliSenseJava的垃圾回收还不识相,非但往往做的不合时宜,而且会占用很多时间。对于一个包含多个ProjectsSolutionVS环境很容易僵死,左下角一个"Updating IntelliSense"的提示。

 

很可惜,VS2005还没有Disable掉这个功能的UI,所以只好用些非常手段来Disable这个有时候比较讨厌的功能了。IntelliSense会不断更新Solution.ncb文件,把这个文件弄成Read-only,然后确认一堆的对话框是个办法,但是太麻烦,最简单直接的办法,需要一点壮士断腕的勇气,就是把VS安装目录下的VC/vcpackages/feacp.dll去掉,这个DLL就是管IntelliSense的,然后这个世界就清净了。

 

注:去掉IntelliSense功能之后,VS ClassView 将会失效,也即看不到任何信息。

 

 

原创粉丝点击