Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.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
.net XmlSerializationReader类的CheckReaderCount方法?为什么它会采用int参数;参考号;?_.net_Integer_Int_Ref - Fatal编程技术网

.net XmlSerializationReader类的CheckReaderCount方法?为什么它会采用int参数;参考号;?

.net XmlSerializationReader类的CheckReaderCount方法?为什么它会采用int参数;参考号;?,.net,integer,int,ref,.net,Integer,Int,Ref,我对值类型pass-by-reference没有太多的研究,但很久以前我通过ref传递了一个struct,今天我在.net framework“CheckReaderCount”中偶然发现了一个函数,它通过ref接受2 int,我想知道这样做到底需要什么????在函数内改变int参数的值,为什么不把Integer对象作为参数????只是想了解在这种情况下ref的用法。很简单-它读取并更改两个参数的值而迭代在按位测试中递增并比较,readerCount与特定属性值进行比较(相等是一个错误条件),并

我对值类型pass-by-reference没有太多的研究,但很久以前我通过ref传递了一个struct,今天我在.net framework“CheckReaderCount”中偶然发现了一个函数,它通过ref接受2 int,我想知道这样做到底需要什么????在函数内改变int参数的值,为什么不把Integer对象作为参数????只是想了解在这种情况下ref的用法。

很简单-它读取并更改两个参数的值<代码>而迭代在按位测试中递增并比较,
readerCount
与特定属性值进行比较(相等是一个错误条件),并且(假设它没有错误)分配该属性值


读取和更改两个值(假设我们不将它们作为字段提升到单独的对象上)的唯一非
ref
方法是将它们作为参数传入,并返回某种元组,然后调用方将其分解以更新局部变量(等等)。简单的
ref
/
ref
更简单。

明白了。因为函数需要向被调用方提供多个(2 int)值,所以这样做是有意义的。