模板做的网站如何下载地址,建设新农村网站,绵阳公司网站制作公司,2017年网站建设公司从C# 8 开始#xff0c;本地方法就可以是静态的了。 与其他的本地方法不同#xff0c;静态的本地方法无法捕获任何本地状态量。 直接看例子#xff1a; 这段代码里有两个本地方法#xff0c;他们分别对实例的一个字段和方法里的一个本地变量进行了修改操作#xff0c;也就… 从C# 8 开始本地方法就可以是静态的了。 与其他的本地方法不同静态的本地方法无法捕获任何本地状态量。 直接看例子 这段代码里有两个本地方法他们分别对实例的一个字段和方法里的一个本地变量进行了修改操作也就是捕获并更新了本地的状态。 其运行结果是 可以看到类的成员字段和方法本地变量的状态都被这两个本地方法修改了。。 避免实例状态被修改 但是很多情况下你并不希望类的实例字段和方法本地变量的值被捕获或修改。在C# 8里面你可以使用静态本地方法来达到这个目的。 其做法很简单就是在原来这两个本地方法前面加上static关键字即可 可以看到程序报错了这是因为静态本地方法是不可以访问和捕获实例的状态的包括实例成员和方法本地变量。 针对第一个本地方法我直接把更新本地变量的语句去掉 而针对第二个本地方法如果你真的想修改实例成员的状态那么就需要把成员改为静态的 其运行结果是 优点 C# 8的这个特性对可读性其实没有特别大的帮助但是它却可以防止本地方法捕获实例状态在一些情况下这对性能有很大的帮助。 更详细教程请点击原文链接。