Wat is een lege array?

De exacte definitie van wat een lege array is in het programmeren van computers is niet altijd duidelijk. Een gemeenschappelijke interpretatie is dat een array leeg als het nul elementen, hoewel niet alle computertalen waardoor een matrix op deze wijze worden verklaard. Een andere interpretatie van een lege array een array waarin alle data elementen null, nul of ongedefinieerde, afhankelijk van de programmeertaal wordt gebruikt. Sommige talen maken een onderscheid tussen een array die leeg is en een array die nog niet is toegekend, gelijk aan nul, hoewel andere talen kunnen overwegen een toegewezen array een lege array.

Er zijn specifieke gevallen waarin een array kan worden verklaard binnen een programma zonder elementen, wat betekent dat het geen gegevens bevatten en wordt beschouwd als een lege array. Deze zijn vaak dynamisch arrays die het aantal elementen kan verhogen, omdat een array zonder elementen in wezen onbruikbaar. In objectgeoriënteerde programmeertalen, kan een lege array worden verklaard in een array klasse wrapper object dat intern is het handhaven van de Array. In sommige scripting en meta-talen, wordt een lege array als parameter doorgegeven aan functies in te vullen of toegewezen waarden van een andere gegevensbron.

De andere betekenis van een lege array is een array die is geïnitialiseerd dus geen data bevat, of is gevuld met waarden tonen geen gegevens aanwezig zijn. Dit komt omdat in talen zoals C, wanneer het geheugen ruimte voor een array wordt toegewezen, het bevat nog steeds alle resterende gegevens uit eerdere programma's of bestanden die de ruimte zou hebben bezet. Om een ​​array als deze leeg, moet elk element worden doorgelust en vervolgens naar een neutrale waarde. Deze waarde kan de werkelijke American Standard Code for Information Interchange (ASCII) waarde nul, dat verschilt van het alfanumerieke teken nul. Het kan ook de waarde nul, wat betekent dat geen waarde, wat hetzelfde is als ASCII nul sommige talen.

Het doel van het hebben van een lege array is gedeeltelijk voor efficiëntie in sommige programma's. Door het hebben van een array die leeg is, kan het programma te voorkomen presterende zinloos of foutieve berekeningen op de array. Het kan ook voorkomen dat een programma toegang een matrix die geen geldig geheugenadres, waardoor een geheugentoegang fout die het programma kan beëindigen. Sommige computer talen hebben ingebouwde bibliotheek of klasse functies die gemakkelijk kan zien of een array is eigenlijk leeg is volgens de taal definitie.