我無法在此搜索一個明確的答案。例如,throw 'temper tantrum'
和Write-Error 'temper tantrum' -ErrorAction Stop
之間是否有任何實際差異?「throw」關鍵字和「Write-Error-ErrorAction Stop」之間有什麼區別?
它們都會產生終止錯誤並設置$?假。我可以看到在CategoryInfo和FullyQualifiedErrorId中存在差異。操作詞是實際。他們有不同的效果嗎?在特定的情況下,是否有理由相對於另一個?
可能重複[什麼時候應該使用Write-Error vs Throw?](http://stackoverflow.com/questions/9294949/when-should-i-use-write-error-vs-throw) –
不可以,不是重複的。我的問題更具體。 ** Write-Error **和** throw **之間的主要區別在於** throw **生成終止錯誤,而** Write-Error **默認情況下不生成。我已經意識到這一點。我的問題是,如果使用「-ErrorAction Stop」使寫入錯誤生成終止錯誤,那麼功能是否存在任何差異。我現在看到(由於Ansgar答案中的提示)他們用不同的對象類型填充$ error。我想知道的是兩者之間是否存在任何優點,缺點,警告或不同用法。 –