848 Shares 3811 views

Una matriz dinámica y sus características

Matriz se denomina generalmente como un conjunto ordenado de elementos, cada uno que tiene una cierta (la misma) TIPO. Las matrices son estáticas y dinámicas. la primera longitud se especifica en el paso, es decir, la programación antes de un arranque del programa para su ejecución, el segundo – en el curso de la ejecución.
Para una matriz estática en la descripción debe ser determinado número de elementos que no se pueden cambiar (aumento o disminución) durante el programa. Al iniciar el programa, usando una matriz estática para su ejecución en la memoria una serie de bytes asignados para almacenar sus elementos. Esta cantidad de memoria será asignado al programa, siempre y cuando haya terminado su trabajo. Incluso si no se utiliza esta memoria, ningún otro código no será capaz de acceder a él.
lenguaje de programación Pascal sólo puede trabajar con matrices estáticas. Por lo tanto, si desea trabajar con una secuencia de longitud variable, es posible describir la estructura, por ejemplo, de cada cien elementos, y se utiliza en diferentes etapas de un número diferente de elementos, que no excedan el número 100. Y es ciertamente imprudente.
Este problema no existe en el integrado entorno de desarrollo de Delphi. Una matriz dinámica permite la descripción no se especifica el número de elementos, y determinar su tiempo de ejecución. Una matriz dinámica se puede describir en sección Var como sigue:
Var Massive: array de número entero

Por lo tanto, la estructura, designada identificador Massive, es una secuencia lineal de número entero desconocido (hasta ahora) de longitud. Para establecer el tamaño, el programa debe aplicar procedimiento SetLength, por ejemplo, SetLength (Massive, 9). adquirir Massive matriz dinámica dimensión igual al número 9. Ahora, se determina que en la secuencia hay nueve elementos de tipo entero, numeradas del cero. Estas características tienen una matriz dinámica. Delphi es un procedimiento libera la memoria de un conjunto de números, donde la necesidad de almacenar desapareció. Este procedimiento Finalizar, en nuestro caso se aplicará de la siguiente manera: Finalizar (masivo).

Del mismo modo, uno puede describir y aplicar las matrices multidimensionales dinámicos en Delphi. Por ejemplo, de dos dimensiones estructura dinámica se describirá como sigue:
Var Massive: array de array de número entero
Si es necesario, las columnas pueden ser de diferentes longitudes. También se especifica procedimiento SetLength.

A menudo, especialmente en los programas grandes y complejos, algunas estructuras de datos se utilizan de vez en cuando, o sólo al principio / final del programa. Fue "en reserva" sería un gran desperdicio de mantener en la memoria. Una matriz dinámica – una forma de la asignación racional de los recursos del sistema informático. Aunque tiene algunas desventajas. En primer lugar, no siempre es conveniente elementos de numeración a partir de cero. En segundo lugar, el programador siempre debe entenderse en cada punto del código, la condición de la matriz dinámica. Sin embargo, sus ventajas hacen ridículos todas estas dificultades. En particular, si desea enviar un gran volumen de datos de subrutina, no puede prescindir del modo dinámico de la representación.