有关PowerShell函数返回值的疑问
最近的项目涉及到了微软的PowerShell,于是在网上各种找资料学习,对它的语法有了一定的了解,能写些简单的脚本执行了。可是在写脚本时,涉及到了函数的返回值,结果碰到了让我很头痛的问题。
下面就用语言描述下,代码就不贴了:在写一个脚本文件时,在文件里定义了一个函数,在这个函数中又定义了一个.net的ArrayList对象,把这个ArrayList对象添加元素后,应用return 语句,作为函数的返回值,添加的元素都是字符串,问题就出在返回值这里了。我在脚本中调用定义的函数时,用另一个变量接收函数的返回值,然后希望循环访问函数中定义的对象元素,结果就是每一个ArrayList对象的序号也成为了一个元素,举个例子:在函数中,我为ArrayList添加了一个元素“abc”,这是ArrayList长度为1。作为返回值返回后,我得到的确实一个长度为2的对象数组,这时的元素值分别为0,“abc”,这个0是数值还是字符串,我目前还不清楚,可以肯定的就是,在函数返回后,ArrayList对象产生了变化,其每个元素的序号也成为了返回值数值的一项元素,这让我很郁闷,到底如何才能把ArrayList最为函数返回值正确的返回呢?希望懂的人能帮我解答这个问题,谢谢!