Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio 2013 提取方法重构的反面_Visual Studio 2013_Refactoring_Automated Refactoring_Inlining - Fatal编程技术网

Visual studio 2013 提取方法重构的反面

Visual studio 2013 提取方法重构的反面,visual-studio-2013,refactoring,automated-refactoring,inlining,Visual Studio 2013,Refactoring,Automated Refactoring,Inlining,在VisualStudio中,有没有一种方法可以执行与“提取方法”相反的重构 我有一个遗留的代码库,它有大约50个非常短的私有函数,每个函数只使用一次,我的任务是对它们进行内联 如果无法进行自动内联重构,是否可以减少内联这些函数调用所需的时间?我当前的工作流程是: 复制函数中的代码 找到它的名字 用复制的代码替换函数调用 替换函数中的局部变量名 删除该函数 您正在寻找的重构称为“内联方法” 虽然VisualStudio不提供这种开箱即用的重构,但您可以通过安装VisualStudio扩展来访问

在VisualStudio中,有没有一种方法可以执行与“提取方法”相反的重构

我有一个遗留的代码库,它有大约50个非常短的私有函数,每个函数只使用一次,我的任务是对它们进行内联

如果无法进行自动内联重构,是否可以减少内联这些函数调用所需的时间?我当前的工作流程是:

  • 复制函数中的代码
  • 找到它的名字
  • 用复制的代码替换函数调用
  • 替换函数中的局部变量名
  • 删除该函数

您正在寻找的重构称为
“内联方法”

虽然VisualStudio不提供这种开箱即用的重构,但您可以通过安装VisualStudio扩展来访问它(以及许多其他有用的重构)


安装扩展后,只需单击方法声明或方法调用,然后调用重构。这将自动将方法中的所有事件内联并删除它。

< P>您可以考虑将这些函数收集到一个头文件中,并用<代码>内联< /代码>来装饰它们。我意识到这并不完全是对您所问问题的回答,但可能是解决您问题的更好方法,因为这样编译器将执行内联(如果它认为合适的话)

这取决于具体情况,但保留函数定义可能会导致代码更清晰,因此即使只调用一次也可能有价值

这也比手动的“内联方法”重构更快、更不容易出错