Compartilhar via


Parâmetros e argumentos de procedimento (Visual Basic)

Na maioria dos casos, um procedimento precisa ter algumas informações sobre as circunstâncias nas quais ele foi chamado. Um procedimento que executa tarefas repetidas ou compartilhadas usa informações diferentes para cada chamada. Essas informações consistem em variáveis, constantes e expressões que você passa para o procedimento ao chamá-lo.

Um parâmetro representa um valor que o procedimento espera que você forneça ao chamá-lo. A declaração do procedimento define seus parâmetros.

Você pode definir um procedimento sem parâmetros, com um parâmetro ou com mais de um. A parte da definição do procedimento que especifica os parâmetros é chamada de lista de parâmetros.

Um argumento representa o valor que você fornece para um parâmetro de procedimento ao chamar o procedimento. O código de chamada fornece os argumentos quando ele chama o procedimento. A parte da chamada de procedimento que especifica os argumentos é chamada de lista de argumentos.

A ilustração a seguir mostra o código chamando o procedimento safeSquareRoot de dois locais diferentes. A primeira chamada passa o valor da variável x (4.0) para o parâmetro number e o valor retornado em (root 2.0) é atribuído à variável y. A segunda chamada passa o valor literal 9.0 para number, e atribui o valor retornado (3.0) à variável z.

Diagram that shows passing an argument to a parameter

Para obter mais informações, consulte Diferenças entre parâmetros e argumentos.

Tipo de dados de parâmetro

Você define um tipo de dados para um parâmetro usando a cláusula As em sua declaração. Por exemplo, a função a seguir aceita uma cadeia de caracteres e um inteiro.

Function appointment(ByVal day As String, ByVal hour As Integer) As String
    ' Insert code to return any appointment for the given day and time.
    Return "appointment"
End Function

Se a opção de verificação de tipo (Instrução Estrita de opção) for Off,, a cláusula As será opcional, exceto pelo fato de que se um parâmetro a usar todos os parâmetros deverão usá-la. Se a verificação de tipo for On, a cláusula As será necessária para todos os parâmetros de procedimento.

Se o código de chamada espera fornecer um argumento com um tipo de dados diferente daquele do parâmetro correspondente, como Byte para um parâmetro String, ele deverá fazer um dos seguintes procedimentos:

  • Fornecer apenas argumentos com tipos de dados que se ampliam para o tipo de dados de parâmetro;

  • Definir Option Strict Off para permitir conversões de restrição implícitas; ou

  • Usar uma palavra-chave de conversão para converter explicitamente o tipo de dados.

Parâmetros de tipo

Um procedimento genérico também define um ou mais parâmetros de tipo, além de seus parâmetros normais. Um procedimento genérico permite que o código de chamada passe tipos de dados diferentes cada vez que ele chama o procedimento, para que ele possa adaptar os tipos de dados aos requisitos de cada chamada individual. Consulte Procedimentos genéricos no Visual Basic.

Confira também