Sam*_*abu 5 powershell class powershell-5.0 powershell-v5.1
我试图使用输出变量Write-Output,但它在PowerShell类方法中不起作用.Write-Host工作中.请参阅下面的示例代码.
class sample {
[string] sampleMethod() {
$output = "Output message"
try {
Write-Output $output
throw "error"
}
catch {
Write-Output $output
$_
}
return "err"
}
}
$obj = [sample]::new()
$obj.sampleMethod()
Run Code Online (Sandbox Code Playgroud)
是否有任何特定原因导致Write-Output在类方法中不起作用?
要添加到marsze的出色答案中:
将方法签名([string] sampleMethod())视为合同 -您向用户保证,如果他们使用0个参数调用该方法,它将始终只返回一个[string]对象。
Write-Output在方法执行期间允许任意数量的语句将违反该合同!
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |