| 4D v20.1Arrays e Memória | ||||||||||||||||||||||||
| 
 | 
    4D v20.1
 Arrays e Memória 
         | |||||||||||||||||||||||
| Tipo de array | Fórmula para determinar a quantidade de memória utilizada em bytes | 
| Booleano | (31+Número de elementos)8 | 
| Data | (1+Número de elementos) * 6 | 
| Alfa (modo Unicode) | (1+Número de elementos) * (Suma do tamanho de cada texto) | 
| Inteiro | (1+Número de elementos) * 2 | 
| Inteiro longo | (1+Número de elementos) * 4 | 
| Imagem | (1+Número de elementos) * 4 + Soma do tamanho de cada imagem | 
| Ponteiro | (1+Número de elementos) * 16 | 
| Real | (1+Número de elementos) * 8 | 
| Texto (modo Unicode) | (1+Número de elementos) * 6 + Soma do tamanho de cada texto | 
| Duas dimensões | (1+Número de elementos) * 12 + Soma do tamanho de cada array | 
Nota:
Quando se trabalha com arrays muito grandes, a melhor forma para lidar com situações de memória cheia é acompanhar a criação dos arrays com um método de projeto ON ERR CALL Exemplo:
  ` Você vai executar uma operação por toda a noite
  ` que requer a criação de arrays grandes. Para evitar
  ` erros na noite, crie os arraays no começo da operação
  ` e teste os erros neste momento:
 gError:=0 ` Inicialização
 ON ERR CALL("MANEJO DE ERROS") ` Instala um método para buscar erros
 ARRAY STRING(63;asEsteArray;50000) ` Aproximadamente 3125K em modo ASCII
 ARRAY REAL(arOutroArray;50000) ` 488K
 ON ERR CALL("") `Não é preciso mais buscar erros
 If(gError=0)
  ` Os arrays podem ser criados
  ` e vamos seguir com a operação
 Else
    ALERT("Esta operação precisa de mais memória")
 End if
  ` Qualquer que seja o caso, não precisamos mais dos arrays
 CLEAR VARIABLE(asEsteArray)
 CLEAR VARIABLE(arOutroArray)O Método de projeto CONTROLE DE ERROS é o seguinte:
  ` Método de projeto CONTROLE DE ERROS
 gError:=Error ` Retornar o código do erro
	Produto: 4D
	Tema: Arrays
	
        
        
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v20)
	
	
	Manual de linguagem 4D ( 4D v20.1)
	
	
	
 Adicionar um comentário
Adicionar um comentário