TÓPICO
about_Return
DESCRIÇÃO RESUMIDA
Sai do escopo atual, que pode ser uma função, um script ou um bloco de
script.
DESCRIÇÃO LONGA
A palavra-chave Return sai de uma função, um script ou um bloco
de script. Pode ser usada para sair de um escopo em um ponto
específico, retornar um valor ou indicar que o final do escopo
foi alcançado.
Talvez os usuários familiarizados com linguagens como C ou C#
queiram usar a palavra-chave Return para seguir a lógica de
deixar um escopo explícito.
No Windows PowerShell, cada instrução tem seus resultados retornados
como saída, até mesmo quando não há uma instrução contendo
a palavra-chave Return. Linguagens como C ou C# retornam apenas
o valor ou os valores especificados pela palavra-chave Return.
Sintaxe
A sintaxe para a palavra-chave Return é a seguinte:
return [<expressão>]
A palavra-chave Return pode aparecer isolada, ou então seguida
por um valor ou uma expressão, desta forma:
return
return $a
return (2 + $a)
Exemplos
O exemplo a seguir usará a palavra-chave Return para sair de
uma função em um ponto específico se uma expressão condicional for
atendida:
function ScreenPassword($instance)
{
if (!($instance.screensaversecure)) {return $instance.name}
<instruções adicionais>
}
foreach ($a in @(get-wmiobject win32_desktop)) { ScreenPassword($a) }
Esse script verifica cada conta de usuário. A função ScreenPassword
retorna o nome de qualquer conta de usuário que não tenha um protetor
de tela protegido por senha. Se o protetor de tela for protegido por
senha, a função concluirá todas as outras instruções a serem
executadas, e o Windows PowerShell não retornará nenhum valor.
No Windows PowerShell, poderão ser retornados valores até mesmo se
a palavra-chave Return não for usada. São retornados os resultados
de cada instrução. Por exemplo, as instruções a seguir retornam o valor
da variável $a:
$a
return
A instrução a seguir também retorna o valor de $a:
return $a
O exemplo a seguir inclui uma instrução destinada a informar ao
usuário que a função está executando um cálculo:
function calculation {
param ($value)
"Aguarde. Processando cálculo..."
$value += 73
return $value
}
Executar essa função e atribuir o resultado a uma variável tem
o seguinte efeito:
C:\PS> $a = calculation 14
C:\PS>
A cadeia de caracteres "Aguarde. Processando cálculo..." não
é exibida. Em vez disso, é atribuída à variável $a, como no
exemplo a seguir:
C:\PS> $a
Aguarde. Processando cálculo...
87
A cadeia de caracteres informativa e o resultado do cálculo são
retornados pela função e atribuídos à variável $a.
CONSULTE TAMBÉM
about_Functions
about_Scopes
about_Script_Blocks