aArrayArray que será duplicado. Pode conter uma ou mais dimensões.
AdvPL GuiaAClone( <aArray> )Duplica um array, inclusive seus subarrays em estruturas multidimensionais.
AClone() cria uma cópia independente do array informado. Diferentemente de uma atribuição simples, que apenas aponta duas variáveis para a mesma estrutura, AClone() replica os elementos e também os subarrays existentes. Por isso é indicada quando a rotina precisa alterar a cópia sem interferir no array original.
AClone( <aArray> )aArrayArray que será duplicado. Pode conter uma ou mais dimensões.
User Function AClone1()
Local aMatriz1 := { 10, 20, 30 }
Local aMatriz2 := AClone(aMatriz1)
Local nCont := 0
For nCont := 1 To Len(aMatriz2)
MsgInfo( CValToChar(aMatriz2[nCont]) )
Next nCont
ReturnO array clonado contém os mesmos valores do array original: 10, 20 e 30.
User Function AClone2()
Local aOriginal := { {"Produto", 10}, {"Serviço", 20} }
Local aCopia := AClone(aOriginal)
aCopia[1][2] := 99
MsgInfo("Original: " + CValToChar(aOriginal[1][2]))
MsgInfo("Cópia: " + CValToChar(aCopia[1][2]))
ReturnAlterar a cópia não muda o valor do array original, inclusive quando há subarrays.
© 2026 Usina.BR. Todos os direitos reservados. TOTVS, Protheus, Microsiga e seus respectivos logotipos são marcas de seus titulares. O AdvPL Guia é independente e utiliza citações limitadas, atribuídas e justificadas por finalidade educativa. Consulte os Termos de Uso. Termos de Uso
Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.