Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/3279126062824/newLayouttecnologia.css
Portuguese

Pagetitle
AAdd
AAdd

Função: AAdd

Inclui

...

um

...

elemento

...

no

...

array

...

e

...

ao

...

elemento,

...

do

...

array

...

recém-criado,

...

é

...

atribuido

...

o

...

valor

...

especificado

...

por

...

parâmetro

...

.

Sintaxe

Bloco de código
collapsefalse
AAdd( <
aDestino>
 aDest >, <
XExpValor> ) --> Nil
 xExpr > )

Parâmetros

...

Nome

Tipo

Descrição

Obrigatório

Referência

...

aDest

...

vetor

Indica o array que receberá o novo elemento.

X

...


xExpr

...

qualquer

Indica uma expressão válida que será o valor do novo elemento.

X


Retorno

Nome

Tipo

Descrição

xRet

qualquer

Retorna o valor especificado em <xExpr>.

Observações

Nil (Nulo)
  • Caso seja especificado em <xExpr> um outro array, o novo elemento no array destino terá uma referência ao array especificado.

...

  • Essa função é útil na construção de filas ou listas dinâmicas.

...

  • Utilize para aumentar o tamanho de um array dinamicamente.
  • Essa função é semelhante a função ASize

...

  • , mas adiciona apenas um elemento por vez.

...

  • Já ASize permite aumentar ou diminuir um array a um tamanho especificado.

...

  • AAdd

...

  • também possui a vantagem de poder atribuir um valor ao novo elemento, enquanto que ASize

...

  • não pode. Além disso, AAdd

...

  • pode parecer igual a função AIns

...

  • , mas não

...

  • é, pois AIns move os elementos dentro de um array, mas não modifica seu tamanho.

Exemplos

Bloco de código
languagecpp
themeEclipse
titleExemplo 1
linenumberstrue
collapsefalse
#include "TOTVS.ch"

#DEFINE CRLF Chr(13)+Chr(10)
User Function 
Exemplo
aadd()
  Local aArray := {"A","B","C"}, aExemplo := {}
  Local cCaractere := "Exemplo", cMensagem := ""
  Local dData := Date()
  Local lLogico := .T.
  Local nNumerico := 86887
  Local negNumerico := -32131
   
  //+----------------------------------------------------------------------------+
  //|Exemplifica o uso da função AAdd                                            |
  //+----------------------------------------------------------------------------+
   
  AAdd( aExemplo, aArray     )
  AAdd( aExemplo, cCaractere )
  AAdd( aExemplo, dData      )
  AAdd( aExemplo, lLogico    )
  AAdd( aExemplo, nNumerico  )
  AAdd( aExemplo, negNumerico  )

  cMensagem += "aExemplo[1] = " + cValToChar( aExemplo[1][1] ) + CRLF //CRLF PARA QUEBRA DE LINHA
  cMensagem += "aExemplo[2] = " + cValToChar( aExemplo[1][2] ) + CRLF
  cMensagem += "aExemplo[3] = " + cValToChar( aExemplo[1][3] ) + CRLF
  cMensagem += "aExemplo[4] = " + cValToChar( aExemplo[2] ) + CRLF
  cMensagem += "aExemplo[5] = " + cValToChar( aExemplo[3] ) + CRLF
  cMensagem += "aExemplo[6] = " + cValToChar( aExemplo[4] ) + CRLF
  cMensagem += "aExemplo[7] = " + cValToChar( aExemplo[5] ) + CRLF
  cMensagem += "aExemplo[8] = " + cValToChar( aExemplo[6] ) + CRLF
   
  //+----------------------------------------------------------------------------+
  //|Apresenta uma mensagem com os resultados obtidos                            |
  //+----------------------------------------------------------------------------+
Return MsgInfo(cMensagem, "Exemplo do AAdd")
Bloco de código
languagecpp
themeEclipse
titleExemplo 2
linenumberstrue
#include "TOTVS.ch"

User Function aadd2()
  Local aExemplo := {}
  Local cMensagem := ""
   
  //+----------------------------------------------------------------------------+
  //|Exemplifica o uso da função AAdd                                            |
  //+----------------------------------------------------------------------------+
   
  //Adicionando elementos na matriz
  AAdd( aExemplo, {"Arthur",   23} )
  AAdd( aExemplo, {"Bruno",    29} )
  AAdd( aExemplo, {"Douglas",  12} )
  AAdd( aExemplo, {"Fabiana",  25} )
  AAdd( aExemplo, {"José",     38} )
  AAdd( aExemplo, {"Katarina", 42} )
  AAdd( aExemplo, {"Marco",    81} )
  AAdd( aExemplo, {"Zoraide",  60} )

  cMensagem += cValToChar(aExemplo[1][1])+" tem " + cValToChar( aExemplo[1][2]) +" anos." + CRLF //CRLF PARA QUEBRA DE LINHA
  cMensagem += cValToChar(aExemplo[2][1])+" tem " + cValToChar( aExemplo[2][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[3][1])+" tem " + cValToChar( aExemplo[3][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[4][1])+" tem " + cValToChar( aExemplo[4][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[5][1])+" tem " + cValToChar( aExemplo[5][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[6][1])+" tem " + cValToChar( aExemplo[6][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[7][1])+" tem " + cValToChar( aExemplo[7][2]) +" anos." + CRLF
  cMensagem += cValToChar(aExemplo[8][1])+" tem " + cValToChar( aExemplo[8][2]) +" anos." + CRLF
 
  //+----------------------------------------------------------------------------+
  //|Apresenta uma mensagem com os resultados obtidos                            |
  //+----------------------------------------------------------------------------+
Return MsgInfo(cMensagem, "Exemplo do AAdd")

Resultado do Exemplo

Image Added

Image Added

Abrangência

Microsiga Protheus 8.11 , Protheus 10

...

Application Server 13.0.0.0

Veja também