我正在使用emacs24.1和auto-complete-clang来完成C ++语法,但是当我触发自动完成操作时,droplist包含无效的成员函数,该函数未在结构中定义。我怎么能避免这个? 我的init.el定义了auto-complete-clang.el
(add-to-list 'load-path "/root/.emacs.d/plugins/auto-complete-1.3.1")
(require 'auto-complete)
(require 'auto-complete-config)
(add-to-list 'ac-dictionary-directories "/root/.emacs.d/plugins/ac-dict")
(ac-config-default)
;;start after 3 characters were typed
(setq ac-auto-start 3)
;;show menu immediately
(setq ac-auto-show-menu 0.3)
是的,我知道构造函数,析构函数和运算符=是默认值,但我仍然不希望它们被显示,因为我没有指定声明它们。
答案 0 :(得分:2)
当您说“无效成员函数”时,您指的是userInfo,~userInfo和operator =?
分别是默认构造函数,析构函数和赋值运算符。每个班级都有一个。他们并非无效。实际上它们是必需的,如果你不提供它们,编译器将生成默认值。有关此问题的更多文档,请参阅http://cartan.cas.suffolk.edu/oopdocbook/opensource/derivedcdas.html
压制这些成员可能不是一个好主意,因为它们仍然是合理的完成。