Partilhar via


Como definir um parâmetro para um procedimento (Visual Basic)

Um parâmetro permite que o código de chamada passe um valor para o procedimento quando ele o chama. Você declara cada parâmetro para um procedimento da mesma forma que declara uma variável, especificando seu nome e tipo de dados. Você também especifica o mecanismo de passagem e se o parâmetro é opcional.

Para obter mais informações, consulte Parâmetros e argumentos do procedimento.

Para definir um parâmetro de procedimento

  1. Na declaração do procedimento, adicione o nome do parâmetro à lista de parâmetros do procedimento, separando-o de outros parâmetros por vírgulas.

  2. Decida o tipo de dados do parâmetro.

  3. Siga o nome do parâmetro com uma As cláusula para especificar o tipo de dados.

  4. Decida o mecanismo de passagem desejado para o parâmetro. Normalmente, você passa um parâmetro por valor, a menos que você queira que o procedimento seja capaz de alterar seu valor no código de chamada.

  5. Preceda o nome do parâmetro com ByVal ou ByRef para especificar o mecanismo de passagem. Para obter mais informações, consulte Diferenças entre passar um argumento por valor e por referência.

  6. Se o parâmetro for opcional, preceda o mecanismo de passagem com Optional e siga o tipo de dados do parâmetro com um sinal de igual (=) e um valor padrão.

    O exemplo a seguir define o esboço de um Sub procedimento com três parâmetros. Os dois primeiros são obrigatórios e o terceiro é opcional. As declarações de parâmetros são separadas na lista de parâmetros por vírgulas.

    Sub updateCustomer(ByRef c As customer, ByVal region As String, 
      Optional ByVal level As Integer = 0)
      ' Insert code to update a customer object.
    End Sub
    

    O primeiro parâmetro aceita um customer objeto e updateCustomer pode atualizar diretamente a variável passada para c porque o argumento é passado ByRef. O procedimento não pode alterar os valores dos dois últimos argumentos porque eles são passados ByVal.

    Se o código de chamada não fornecer um valor para o parâmetro, Visual level Basic defini-lo para o valor padrão de 0.

    Se a opção de verificação de tipo (Option Strict Statement) for Off, a As cláusula será opcional quando você definir um parâmetro. No entanto, se qualquer parâmetro usa uma As cláusula, todos eles devem usá-lo. Se a opção de verificação de tipo for On, a As cláusula será necessária para cada definição de parâmetro.

    A especificação de tipos de dados para todos os elementos de programação é conhecida como digitação forte. Quando você define Option Strict On, o Visual Basic impõe digitação forte. Isto é fortemente recomendado, pelas seguintes razões:

    • Ele permite o suporte ao IntelliSense para suas variáveis e parâmetros. Isso permite que você veja suas propriedades e outros membros enquanto digita seu código.

    • Ele permite que o compilador execute a verificação de tipo. Isso ajuda a capturar instruções que podem falhar em tempo de execução devido a erros como estouro. Ele também captura chamadas para métodos em objetos que não os suportam.

    • Isso resulta em uma execução mais rápida do seu código. Uma razão para isso é que, se você não especificar um tipo de dados para um elemento de programação, o compilador do Visual Basic atribui a ele o Object tipo. Seu código compilado pode ter que converter para frente e para trás entre Object e outros tipos de dados, o que reduz o desempenho.

Consulte também