Partilhar via


Tipo de unidade

O unit tipo é um tipo que indica a ausência de um valor específico, o unit tipo tem apenas um único valor, que atua como um espaço reservado quando nenhum outro valor existe ou é necessário.

Sintaxe

// The value of the unit type.
()

Observações

Cada expressão F# deve ser avaliada com um valor. Para expressões que não geram um valor de interesse, o valor do tipo unit é usado. O unit tipo é semelhante ao void tipo em linguagens como C# e C++.

O unit tipo tem um único valor, e esse valor é indicado pelo token ().

O valor do unit tipo é frequentemente usado na programação em F# para manter o local onde um valor é exigido pela sintaxe da linguagem, mas quando nenhum valor é necessário ou desejado. Um exemplo pode ser o valor de retorno de uma printf função. Como as ações importantes da printf operação ocorrem na função, a função não precisa retornar um valor real. Portanto, o valor de retorno é do tipo unit.

Algumas construções esperam um unit valor. Por exemplo, espera-se que uma do associação ou qualquer código no nível superior de um módulo seja avaliado para um unit valor. O compilador relata um aviso quando uma do ligação ou código no nível superior de um módulo produz um resultado diferente do unit valor que não é usado, como mostrado no exemplo a seguir.

let function1 x y = x + y
// The next line results in a compiler warning.
function1 10 20
// Changing the code to one of the following eliminates the warning.
// Use this when you do want the return value.
let result = function1 10 20
// Use this if you are only calling the function for its side effects,
// and do not want the return value.
function1 10 20 |> ignore

Este aviso é uma característica da programação funcional; ele não aparece em outras linguagens de programação .NET. Em um programa puramente funcional, no qual as funções não têm efeitos colaterais, o valor de retorno final é o único resultado de uma chamada de função. Portanto, quando o resultado é ignorado, é um possível erro de programação. Embora o F# não seja uma linguagem de programação puramente funcional, é uma boa prática seguir o estilo de programação funcional sempre que possível.

Consulte também