我们整天都在企业调度程序上循环运行一个程序。调度器需要一个整数返回值,所以我们必须编写程序自然地返回它。但是,我们想要保持一些信息的运行记录,所以我需要以某种方式传入一个集合对象,保留它的值,将新计数添加到对象,然后将新的总数传递回调用它的程序。
我对使用out
关键字比较陌生,所以我什至可能没有走上正确的道路。现在有人告诉我,我需要先分配对集合对象的控制权,然后才能使用它,但这会消除它传入时包含的任何计数。有没有办法用来out
保留值或应该我用别的方法?
我们整天都在企业调度程序上循环运行一个程序。调度器需要一个整数返回值,所以我们必须编写程序自然地返回它。但是,我们想要保持一些信息的运行记录,所以我需要以某种方式传入一个集合对象,保留它的值,将新计数添加到对象,然后将新的总数传递回调用它的程序。
我对使用out
关键字比较陌生,所以我什至可能没有走上正确的道路。现在有人告诉我,我需要先分配对集合对象的控制权,然后才能使用它,但这会消除它传入时包含的任何计数。有没有办法用来out
保留值或应该我用别的方法?
传入的out
参数在逻辑上没有任何值。实际上,您可以使用甚至没有明确分配的变量:
int x; // No logical value yet
Foo(out x);
听起来您可能想要ref
代替 - 尽管我个人尽量避免使用ref
or out
,而是尽可能使用返回值返回我的方法的所有结果。
请参阅我关于参数传递的文章,以了解更多信息ref
和out
一般情况。
集合对象,就像是引用类型,所以如果你希望你的方法能够改变你传入的内容,你List<T>
甚至不需要使用关键字out
List<T>