şeklinde tanımlıyorsunuz. Ama içine bir türlü değer atamadım
faturalar[0].create; dediğim zaman hata ile karşılaşıyorum. Bu tarz bir değişken nasıl kullanılır bilen var mı ?
Buna değişken elemanlı dizi, orjinal adıyla dynamic array diyoruz.
Değişken elemanlı demek dilediğin yani ihtiyaç duyduğun anda eleman sayısını belirlemen ve ondan sonra bu belirlediğiniz sayı kadar eleman ile sınırlı olarak değer atamanız beklenir. Özetini aldınız detayını araştırıp öğrenmeniz gereken kısım buradan başlıyor.
Dizinin eleman sayısını SetLength fonksiyonu ile veriyoruz. Sizin create ile yapmaya çalıştığınız budur. Diziler nesne olmadığından create edilmez. İstisnai olarak eğer dizi elemanı olarak bir nesne tipi vermişseniz o zaman her eleman create edilmek zorunda ki üzerinden geçmezsek eksik ifade etmiş olurduk.
Deneyeceğiniz işlem SetLength(faturalar, 5); dediğinde 0 dahil 5 dahil 6 adet elemanlı bir diziniz olmuş oluyor.
Dilediğiniz zaman buna ekleme yapabilirsiniz. SetLength(faturalar, 6); derseniz 0 dahil 6 dahil 7 elemana genişletmiş olurken eski değerler bozulmadan korunurlar.
Takip eden iş faturalar[0].faturano := 123; gibisinden type olarak fatura içeriği nasıl tanımlanmışsanız değer atayabilir, kullanabilirsiniz.