在Visual Assist或Vanilla Visual Studio中启用枚举的自动完成功能

4

有没有办法使用Visual Assist或Vanilla Visual Studio使开关随着枚举的所有值扩展?包含的代码片段只插入一个基本的开关,并且只有一个默认条目。 我正在使用最新的Visual Studio 2013更新。

3个回答

7

在生成开关之后,如果您添加了新的枚举值,则可以使用Visual Assist中的添加缺失的Case语句命令(shift+alt+q, m)来将开关语句填充为新值。


6

VS 2013 可以使用默认代码片段为枚举类型建立 switch 语句。(注意:请使用默认的 VS 代码片段,而不是 VA 代码片段。)

输入 "swit" 后,从 VS 的建议代码片段中选择,并将 "switch_on" 替换为您的枚举类型,然后按 Enter 键。这样您的语句就会展开。(如果您从列表框中选择了一个枚举类型,则需要按两次 Enter 键。)

select the default VS snippet for switch


2
对我没用。更准确地说,它曾经工作过一次,然后两次没有工作。VS2015。有什么想法吗? - Violet Giraffe
2
@VioletGiraffe 我有同样的问题。有时它能正常工作,非常好用。但有时候选项就是不会出现。下面sean-e提供的另一个答案对我来说在所有情况下都有效。 - jeevcat

3
在Visual Studio 2015中,如果鉴别器声明为const,例如下面的示例,switch case的自动补全功能将被禁用:
auto const enu = static_cast<MediaType>(discriminant);

去掉const,这样它就能正常工作了!

(如果您希望,您可以再加回const。)


谢谢!在VS 2019中似乎仍然是一样的工作。 - Uflex

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