-1

我们整天都在企业调度程序上循环运行一个程序。调度器需要一个整数返回值,所以我们必须编写程序自然地返回它。但是,我们想要保持一些信息的运行记录,所以我需要以某种方式传入一个集合对象,保留它的值,将新计数添加到对象,然后将新的总数传递回调用它的程序。

我对使用out关键字比较陌生,所以我什至可能没有走上正确的道路。现在有人告诉我,我需要先分配对集合对象的控制权,然后才能使用它,但这会消除它传入时包含的任何计数。有没有办法用来out保留值或应该我用别的方法?

4

2 回答 2

4

传入的out参数在逻辑上没有任何值。实际上,您可以使用甚至没有明确分配的变量:

int x; // No logical value yet
Foo(out x);

听起来您可能想要ref代替 - 尽管我个人尽量避免使用ref or out,而是尽可能使用返回值返回我的方法的所有结果。

请参阅我关于参数传递的文章,以了解更多信息refout一般情况。

于 2013-09-10T17:18:07.727 回答
3

集合对象,就像是引用类型,所以如果你希望你的方法能够改变你传入的内容,你List<T>甚至不需要使用关键字outList<T>

于 2013-09-10T17:18:59.587 回答