【发布时间】:2015-06-22 08:17:24
【问题描述】:
我希望这里有人知道如何使用 Visual Studio 2013 按类型查找文本并替换它们。例如,我有一个使用运算符重载进行乘法的结构。因此,在我的整个程序中,我都有语句/表达式,例如 struct * struct。
我想更改所有这些以使用方法;例如,我想更改以下内容:
Vectro3 a;
Vector3 b;
Vector3 c = a * b;
到:
Vector3 a;
Vector3 b;
Vector3 c = Vector3.Mul(a, b);
有没有一种方法可以搜索 Vector3 类型与 Vector3 的倍数,而不是例如类型 float 倍数 float 的位置,然后将其替换为其他内容?
我需要将其更改为方法的原因是因为我将使用程序来内联计算,而不是使用运算符或方法。我有大约 8000 多个案例,所以手动操作会很痛苦。
我真的希望这里有人知道可以做到这一点的技术或程序。我在 Resharper 的 Refactor 中尝试了搜索模式,但是那个插件弄乱了我的整个代码。我可能用错了,如果有人知道如何在 Refactor 中使用搜索模式执行上述操作,请告诉我。
提前致谢!
【问题讨论】:
-
“使用程序内联计算而不是使用运算符或方法”是什么意思?
-
ReSharper 重构能够通过将方法调用替换为方法主体来内联方法调用。例如:“c = a * b”将被内联,看起来像这样:“ Vector3 tmp; tmp.x = ax* bx; tmp.y = ay* by; tmp.z = zy*by; c = tmp ;"为了我的目的,内联计算给了我巨大的性能提升。我正在为物理引擎使用固定数学,以确保跨所有平台的确定性。
标签: c# search visual-studio-2013 replace resharper