“直接”是指类似于 Size*2(不起作用)的东西,而不是:
size1 = new Size(size1.Width * 2, size1.Height * 2);
Run Code Online (Sandbox Code Playgroud)
从技术上讲,您可以编写扩展方法:
public static class Extensions {
public static Size Multiply(this Size size, double factor) {
return new Size((int)(size.Width * factor), (int)(size.Height * factor));
}
}
Run Code Online (Sandbox Code Playgroud)
但几乎没有人会正确使用它。他们会写
this.Size.Multiply(1.2);
Run Code Online (Sandbox Code Playgroud)
而不是所需的
this.Size = this.Size.Multiply(1.2);
Run Code Online (Sandbox Code Playgroud)
一个几乎不可避免的错误,因为它看起来像一个实例方法。所以不要这样做,只写一个静态的辅助方法。