4

我有以下代码将值初始化为-1:

Set-Variable -Name ID -Value -1 -Scope local

当我这样做时,

$local:ID++

我收到以下错误:

'++' 运算符仅适用于数字。操作数是“System.String”。

我认为它会隐含地将其视为 int。但是,我必须使用一个不整洁的解决方法:

解决方法:

$intVal = [int]$local:ID
$intval ++

还有另一种方法吗?

4

1 回答 1

3

$id 是一个字符串(输入 $id.gettype() 来查找它的类型)。为了将其初始化为整数,请将其放在括号中:

PS> Set-Variable -Name ID -Value (-1) -Scope local
PS> ($local:ID++) #increment and print the variable 
0
于 2012-05-14T13:14:11.557 回答