Informática, Programación
Unha matriz dinámica e as súas características
Matriz é xeralmente refire como un conxunto ordenado de elementos a ter cada un certo (o mesmo) tipo. Matrices son estáticos e dinámicos. o primeiro longo é especificado no paso, isto é, a programación antes dun inicio do programa para execución, o segundo - no curso de execución.
Para unha matriz estática na descrición debe ser determinado número de elementos, que non pode ser alterada (aumento ou diminución) durante o programa. Cando o programa comeza, usando unha matriz estática para execución na memoria dun número de bytes alocados para almacenar os seus elementos. Esta cantidade de memoria será asignado ao programa, sempre que rematou o seu traballo. Aínda que esa memoria non se usa, ningún outro código non poderá acceder a ela.
linguaxe de programación Pascal só pode traballar con matrices estáticas. Polo tanto, se quere traballar con unha secuencia de lonxitude variable, é posible describir a estrutura, por exemplo, fóra de cen elementos, e usado en diferentes etapas de un número diferente de elementos, que non excedan o número 100. E é certamente unha boa idea.
Este problema non existe no integrado ambiente de desenvolvemento do Delphi. Unha matriz dinámica permite a descrición non se especifica o número de elementos, e determinar o seu tempo de execución. Unha matriz dinámica poden ser descritos na sección Var como segue:
Var maciza: matriz de número enteiro
Así, a estrutura, designada identificador maciza, é unha secuencia lineal de número enteiro descoñecido (medida) de lonxitude. Para axustar o tamaño, o programa debe aplicar procedemento SetLength, por exemplo, SetLength (macizo, 9). adquiren maciza dimensión matriz dinámica igual ao número 9. Agora determínase que a raíz hai nove elementos de tipo enteiro, numerados de cero. Estas características teñen unha matriz dinámica. Delphi é un procedemento libera a memoria dun conxunto de números, onde a necesidade de almacenar desapareceu. Este procedemento Finalice, no noso caso, aplicarase o seguinte: Finalice (macizo).
Do mesmo xeito, pódese describir e aplicar matrices dinámicas multidimensionais en Delphi. Por exemplo, bidimensional estrutura dinámica será descrito como segue:
Var maciza: matriz de matriz de número enteiro
Se é necesario, as columnas poden ser de diferentes lonxitudes. Tamén se especifica procedemento SetLength.
Moitas veces, especialmente en programas grandes e complexos, algunhas estruturas de datos son usados ao longo do tempo, ou só no inicio / fin do programa. Foi "na reserva" sería moi desperdicio para manter na memoria. A matriz dinámica - unha forma de distribución racional dos recursos do sistema do computador. Aínda que algunhas desvantaxes. En primeiro lugar, non é sempre elementos de numeración convenientes a partir de cero. En segundo lugar, o programador debe sempre ser entendida, en cada punto do código, a condición da matriz dinámica. Pero as súas vantaxes fan ridículas todas estas dificultades. En particular, se quere enviar un gran volume de sub-rutina de datos, non pode facer sen o modo dinámico de representación.
Similar articles
Trending Now