【问题标题】:Visual Studio 2015 How to quickly move existing code after if statement into newly placed curly braces?Visual Studio 2015 如何将 if 语句后的现有代码快速移动到新放置的花括号中?
【发布时间】:2016-09-23 20:02:52
【问题描述】:

所以如果我有这样的事情:

 if (a>b)
      return true;

我后来决定将其更改为:

if (a>b)
{
     a++;
     return true;
}

有没有更快的方法让 if 语句下的现有代码直接进入新制作的花括号?因为目前如果我要在第一个示例中创建 if 语句后添加花括号,我必须从新花括号下剪切“return true”并将其粘贴在新制作的花括号之间。这是它的样子:

if (a>b)
{
}
return true;

这很烦人。是否有解决办法,还是我们必须手动复制现有行并将其粘贴到括号之间?

附:我正在使用 Microsoft Visual Studio 2015 ver 3 并使用 c# 进行编程,但我认为这个问题也出现在其他语言中,例如 c++。

【问题讨论】:

标签: c# visual-studio visual-studio-2015 curly-braces


【解决方案1】:

突出显示代码,然后按 Alt + 向上箭头。使用 Alt + 向下箭头向下移动代码。也适用于多行。另外,您不必突出显示整行。只要突出显示一个字符,它就可以工作。

https://blogs.msdn.microsoft.com/zainnab/2013/07/01/visual-studio-2013-preview-moving-lines-of-code/

【讨论】:

  • 老兄。你做主。
  • 这比我之前做的好多了,谢谢!
【解决方案2】:

亚历克斯有一个很好的答案。或者,如果您不想在创建后将代码移动到 if 中,那么您也可以在正文中突出显示您想要的代码。然后按ctrl + K, S(或在右键菜单中找到'Surround with'),输入if,然后回车。

这将创建一个if 语句并将突出显示的代码嵌入到if 的正文中。

【讨论】:

    【解决方案3】:

    我不知道更快的方法,但您可以尝试先添加底部大括号,然后在 if 旁边添加顶部大括号。唯一的问题是它会自动格式化您添加的底部大括号,除非您返回并删除并在事后添加它。

    另一个可能不是什么快捷方式的选项是突出显示“return true”,右键单击上下文菜单并选择“surround with”并选择 if (or while, or for)。这将创建块并移动光标,以便您可以输入条件。 (热键和弦是 Ctrl+K,Ctrl+S。)

    【讨论】:

      【解决方案4】:

      一些选项:

      • 使用 R#。然后,当您要添加 a++; 时,首先在 return 的 'r' 之前键入带有光标的左大括号,它将为您添加右大括号,然后当您按 Enter 时,您将准备输入a++;。只需 1 或 2 次击键,具体取决于您想要什么。 (这在 R# 中是可配置的,因此您的里程数将取决于此)。

      • 也许是主观的,但这是一个很好的理由,首先不要像原始代码那样编写代码,而是在单个语句块中使用大括号。如果这对您来说太难吃,请将单个语句与 if() 放在同一行

      【讨论】:

        【解决方案5】:

        MissingBraces 扩展允许您将 if/else/for/foreach 大括号添加为快速操作。

        【讨论】:

        • 您介意详细说明一下吗?我不知道什么是快速操作或 MissingBraces 是如何工作的。对不起,这听起来很酷,这可能就是我要找的。​​span>
        • 是的,我刚刚点击了你的超链接,它告诉了我我需要的一切,谢谢它运作良好:)
        猜你喜欢
        • 2017-04-10
        • 1970-01-01
        • 2012-05-03
        • 2023-01-16
        • 2011-04-30
        • 2017-06-14
        • 1970-01-01
        • 2017-09-15
        • 1970-01-01
        相关资源
        最近更新 更多