Protheus :: Programação Básica em Advpl “Combo XXIII”
Funções/Parâmetros
Ao fazer uma chamada a uma função valores são fornecidos para os parâmetros. Esses valores podem assumir a forma de constantes, variáveis, campos, elementos de arrays ou expressões, e eles são citados como parâmetros reais ou argumentos de chamada.
Uma chamada de função pode, também, omitir argumentos para qualquer número de parâmetros, deixando um vazio onde o argumento deveria estar. Será necessário incluir as vírgulas delimitadoras na lista de argumentos, exceto para quaisquer argumentos omitidos no final da lista. Isto assegura não existir ambigüidade sobre quais parâmetros foram deixados em branco. Quaisquer argumentos omitidos de uma chamada de função serão tratados exatamente como se o valor NIL tivesse sido realmente passado. Não há como distinguir, dentro da definição de função, entre o argumento omitido e um valor NIL passado explicitamente. A chamada:
User Function Test( nS , nE , nI , nD )
Return
U_Test( nRow , , 2 )
À função U_Test(), conforme definida acima, resultará no corpo da função sendo executada como se os parâmetros formais tivessem sido inicializados assim:
nS := nRow
nE := NIL
nI := 2
nD := NIL
Ao fazer uma chamada a uma função valores são fornecidos para os parâmetros. Esses valores podem assumir a forma de constantes, variáveis, campos, elementos de arrays ou expressões, e eles são citados como parâmetros reais ou argumentos de chamada.
Uma chamada de função pode, também, omitir argumentos para qualquer número de parâmetros, deixando um vazio onde o argumento deveria estar. Será necessário incluir as vírgulas delimitadoras na lista de argumentos, exceto para quaisquer argumentos omitidos no final da lista. Isto assegura não existir ambigüidade sobre quais parâmetros foram deixados em branco. Quaisquer argumentos omitidos de uma chamada de função serão tratados exatamente como se o valor NIL tivesse sido realmente passado. Não há como distinguir, dentro da definição de função, entre o argumento omitido e um valor NIL passado explicitamente. A chamada:
User Function Test( nS , nE , nI , nD )
Return
U_Test( nRow , , 2 )
À função U_Test(), conforme definida acima, resultará no corpo da função sendo executada como se os parâmetros formais tivessem sido inicializados assim:
nS := nRow
nE := NIL
nI := 2
nD := NIL
Comentários
Postar um comentário