dar*_*ioo 25
嗯,它比那更多参与.
默认情况下,Emacs不"了解"C或C++代码的函数声明.首先,获得Exuberant Ctags.然后,etags在源代码上使用命令(ctags for Emacs).TAGS将生成一个名为的文件.
然后,在编辑源代码时,如果要跳转到声明,请按M-.(元和点,或现代键盘上的alt和点).首先,Emacs会询问您标签文件的位置.将其指向您生成的那个,然后导航将自动进行.
我建议阅读Emacswiki关于标签的文章,以便更好地理解这个功能.
最新版本的Emacs(23.2)附带了CEDET集成,它具有更高级的C和C++导航功能,但设置起来可能有点困难,所以如果您感兴趣,请阅读更多相关内容.
M-.键将带您进入功能定义emacs.
有多种方法可以做到这一点。如darioo所述,Ctags是其中之一,但默认情况下会进入定义(可能对您有用)。不过,进一步看,您可以看到前缀M-.(即C-u M-.)会将您带到下一个标签匹配项(通常是声明)。还有一个--declarations选项,但是Exuberant Ctags似乎不支持它。
CEDET是另一种选择,但是以我的经验,它还没有准备好进行生产。在C ++中,通常情况下semantic-ia-fast-jump会转发声明而不是定义或声明。