C# in 参数修饰符

in 修饰符记录:

新版C# 新增加的 in 修饰符:保证发送到方法当中的数据不被更改(值类型),当in 修饰符用于引用类型时,可以改变变量的内容,单不能更改变量本身。

个人理解:in 修饰符传递的数据,在方法里就是只读的 ,不能进行任何更改。

 1 class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5 
 6             int x = 25;
 7             ChangeX(x);
 8         }
 9 
10         private static void ChangeX(in int x)
11         {
12             x = x + 2;//错误 CS8331  无法分配到 变量 'in int',因为它是只读的
13 
14             Console.WriteLine(x);
15         }
16     }