BilgisayarlarProgramlama

Dinamik dizi ve özellikleri

Bir diziye genel olarak sıralı bir dizi öğe denir ve bunların her biri belirli (aynı tür) türdedir. Diziler statik ve dinamiktir. Birinci programın uzunluğu programlama aşamasında belirtilir; Çalıştırılacak programı başlatmadan önce, ikincisi - yürütme sırasında.
Statik bir dizi için açıklama, program işlemi sırasında değiştirilemeyen (artmış veya azaltılmış) öğe sayısını belirtmelidir. Statik bir dizi kullanan bir programı çalıştırdığınızda, RAM belleğine elemanlarını depolamak için bir dizi bayt atanır. Bu hafıza miktarı, işi bitirene kadar programa atanacaktır. Bu bellek kullanılmasa bile, başka hiçbir program kodu erişemeyecektir.
Pascal programlama dili yalnızca statik dizilerle çalışabilir. Bu nedenle, değişken uzunlukta bir sıra ile çalışmak istiyorsanız, örneğin bir yüz öğeden bir yapı açıklayabilir ve 100'den fazla olmayan farklı aşamalardaki farklı sayıdaki öğeleri kullanabilirsiniz. Ve elbette bu mantıksızdır.
Böyle bir problem Delphi IDE'de mevcut değildir . Dinamik dizi açıklamada öğe sayısını belirtmemenizi, ancak programın yürütülmesi sırasında belirlenmesini sağlar. Var bölümünde aşağıdaki gibi dinamik bir dizi tanımlanabilir:
Var Masif: tamsayı dizisi

Böylece, Massive tanımlayıcısı tarafından gösterilen yapı bilinmeyen (henüz!) Uzunluğun doğrusal bir tamsayı sırasıdır. Boyutu ayarlamak için, programın SetLength yordamı kullanması gerekir, örneğin SetLength (Massive, 9). Dinamik bir Massive dizi, 9'a eşit bir boyut kazanacaktır. Şimdi, sekansın sıfırdan numaralandırılmış dokuz tam sayı tipi elemanları içerdiği saptanmıştır. Bu özelliklerin dinamik bir dizisi var. Depolama gereksinimi ortadan kalktığında, Delphi'nin bir dizi sayıdan belleği boşa çıkaran bir prosedür vardır. Bu sonuçlandırma prosedürü, bizim durumumuzda şu şekilde uygulanacaktır: Sona Erme (Massive).

Benzer şekilde, Delphi'de çok boyutlu dinamik dizileri tanımlayabilir ve uygulayabilirsiniz. Örneğin, iki boyutlu bir dinamik yapı aşağıdaki gibi tanımlanacaktır:
Var Masif: tamsayı dizisi dizisi
Gerekirse, matris sütunları farklı uzunluklarda olabilir. Bu, ayrıca SetLength yordam tarafından belirtilir.

Genellikle, büyük ve karmaşık programlarda, bazı veri yapılarının zaman zaman veya yalnızca programın başında / sonunda kullanıldığı durumlarda olur. Aynı zamanda, RAM'de bir yer tutmak "boşuna" yapmak çok zahmetli olur. Dinamik bir dizi, bilgi işlem sisteminin kaynaklarını rasyonel olarak dağıtmanın yollarından biridir. Bazı dezavantajları olmasına rağmen. Birincisi, elemanları sıfırdan numaralandırmak her zaman uygun değildir. İkincisi, programcı program kodunun her noktasında, dinamik dizinin hangi durumda olduğunu sürekli olarak anlamalıdır. Ancak onun erdemleri tüm bu zorlukları saçma yapar. Özellikle, büyük bir veriyi altprogramdan aktarmak isterseniz, dinamik bir temsil olmadan yapamazsınız.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 tr.delachieve.com. Theme powered by WordPress.