在Visual Assist或Vanilla Visual Studio中切换枚举的自动完成

时间:2014-09-17 09:20:06

标签: c++ visual-studio visual-assist

无论如何使用Visual Assist或Vanilla Visual Studio将交换机扩展为枚举的所有值?包含的snipsets只插入一个只有默认条目的基本开关。我正在使用上一次visual studio 2013更新。

3 个答案:

答案 0 :(得分:6)

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

当您输入“swit”时,请接受来自VS的建议代码段。将“switch_on”替换为枚举,然后按Enter键。你的发言将会扩大。 (如果从列表框中选择了一个枚举,则需要两个输入。)

select the default VS snippet for switch

答案 1 :(得分:5)

最初生成开关后,如果添加新的枚举值,则可以使用Visual Assist中的Add Missing Case Statements命令使用新值(shift+alt+q, m)填充switch语句。 / p>

答案 2 :(得分:1)

在Visual Studio 2015中,如果在本例中使用const声明鉴别符,则切换条件的自动完成将失败:

auto const enu = static_cast<MediaType>(discriminant);

删除const,瞧瞧-它又可以工作了!

(然后,您可以根据需要将const放回去。)