4

我正在使用 emacs24.1 和 auto-complete-clang 来完成 C++ 语法,但是当我触发自动完成操作时,下拉列表包含在 struct 中未指定定义的无效成员函数。我怎样才能避免这种情况?我的 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)

是的,我知道构造函数、析构函数和运算符 = 是默认的,但我仍然不希望显示它们,因为我没有指定声明它们。

在此处输入图像描述

4

1 回答 1

2

当您说“无效的成员函数”时,您指的是 userInfo、~userInfo 和 operator= 吗?

它们分别是默认的构造函数、析构函数和赋值运算符。每个班级都会有一个。它们不是无效的。实际上它们是必需的,如果您不提供它们,编译器将生成默认值。有关这方面的更多文档,请参阅http://cartan.cas.suffolk.edu/oopdocbook/opensource/derivedcdas.html

压制这些成员可能不是一个好主意,因为它们仍然是合理的完成。

于 2012-11-08T03:17:05.297 回答