- ArrayBsearch
- ArrayCopy
- ArrayCompare
- ArrayFree
- ArrayGetAsSeries
- ArrayInitialize
- ArrayFill
- ArrayIsDynamic
- ArrayIsSeries
- ArrayMaximum
- ArrayMinimum
- ArrayPrint
- ArrayRange
- ArrayResize
- ArrayInsert
- ArrayRemove
- ArrayReverse
- ArraySetAsSeries
- ArraySize
- ArraySort
- ArraySwap
- ArrayToFP16
- ArrayToFP8
- ArrayFromFP16
- ArrayFromFP8
ArrayInsert
Belirtilen eleman sayısını belirli bir indeksten başlayarak bir kaynak diziden bir alıcı diziye ekler.
bool ArrayInsert(
|
Parametreler
dst_array[]
[in][out] Elemanların ekleneceği alıcı dizi.
src_array[]
[in] Elemanların kopyalanacağı kaynak dizi.
dst_start
[in] Kaynak diziden eleman eklemek için alıcı dizideki indeks.
src_start=0
[in] Elemanların eklenmek üzere alındığı kaynak dizideki indeks.
count
[in] Kaynak diziden eklenecek eleman sayısı. WHOLE_ARRAY, belirtilen indeksten dizinin sonuna kadar olan tüm elemanları ifade eder.
Geri dönüş değeri
Başarılı olursa true, aksi takdirde false olarak geri döner. Hata hakkında bilgi edinmek için, GetLastError() fonksiyonunu çağırın. Olası hatalar:
- 5052 – ERR_SMALL_ARRAY (start ve/veya count parametreleri yanlış olarak ayarlı veya src_array[] kaynak dizisi boş),
- 5056 – ERR_SERIES_ARRAY (dizi değiştirilemez, gösterge tamponu),
- 4006 – ERR_INVALID_ARRAY (kendine kopyalamaya izin verilmez veya diziler farklı tiptedir ya da sınıf nesneleri veya yıkıcı yapılar içeren sabit boyutlu bir dizi vardır.),
- 4005 - ERR_STRUCT_WITHOBJECTS_ORCLASS (Dizi POD yapısı içermez, bu durum basit kopyalamanın mümkün olmadığı anlamına gelir),
- dst_array[] alıcı dizi boyutunu değiştirirken meydana gelen hatalar, ArrayRemove() fonksiyon tanımında verilir.
Not
Fonksiyon sabit boyutlu bir dizi için kullanılıyorsa, dst_array[] alıcı dizinin kendisinin boyutu değişmez. dst_start konumundan başlayarak, alıcı dizinin elemanları sağa kaydırılır (elemanların son count parametresi "çıkar"), kaynak dizinden kopyalanan elemanlar ise onların yerlerini geçer.
Elemanları, SetIndexBuffer() fonksiyonu aracılığıyla gösterge tamponları olarak belirtilen dinamik dizilere ekleyemezsiniz. Gösterge tamponları için, tüm boyut değiştirme operasyonları terminalin yürütücü alt sistemi tarafından gerçekleştirilir.
Kaynak dizide, elemanlar src_start indeksinden başlayarak kopyalanır. Kaynak dizi boyutu değişmeden kalır. Alıcı diziye eklenecek elemanlar, kaynak dizi elemanlarına bağlantılar değildir. Bunun anlamı, iki diziden herhangi birindeki elemanların sonraki değişikliklerinin ikinci dizide yansıtılmamasıdır.
Örnek:
//+------------------------------------------------------------------+
|
Ayrıca bakınız
ArrayRemove, ArrayCopy, ArrayResize, ArrayFree