Hva er en tom matrise?
Den nøyaktige definisjonen av hva en tom matrise er i programmering av datamaskiner er ikke alltid tydelig. En vanlig tolkning er at en matrise er tom hvis den har null elementer, selv om ikke alle dataspråk gjør det mulig å erklære en matrise på denne måten. En annen tolkning av en tom matrise er en matrise der alle dataelementene enten er null, null eller udefinerte, avhengig av hvilket programmeringsspråk som brukes. Enkelte språk skiller mellom et array som er tomt og et array som ikke er tildelt enda og er lik null, selv om andre språk kan anse en ikke-allokert matrise som en tom matrise.
Det er spesifikke tilfeller der en gruppe kan deklareres i et program uten elementer, noe som betyr at den ikke kan inneholde noen data og regnes som en tom matrise. Dette er ofte dynamiske matriser som kan øke antall elementer, fordi en matrise uten elementer i det vesentlige er ubrukelig. I objektorienterte programmeringsspråk kan en tom matrise deklareres inne i et matrisklasseomslagningsobjekt som opprettholder matrisens datastruktur internt. I noen skripter og metaspråk blir en tom matrise sendt som parameter til funksjoner som skal fylles eller tildeles verdier fra en annen datakilde.
Den andre betydningen av en tom matrise er en matrise som er initialisert slik at den ikke inneholder noen data, eller er fylt med verdier som indikerer at ingen data er til stede. Dette er fordi på språk som C, når minneplass for en matrise er tildelt, den fremdeles inneholder resterende data fra tidligere programmer eller filer som kan ha okkupert plassen. For å tømme en matrise som dette, må hvert element sløyfes gjennom og deretter settes til en nøytral verdi. Denne verdien kan være den faktiske amerikanske standardkoden for informasjonsutveksling (ASCII) -verdien null, som er forskjellig fra det alfanumeriske tegnet null. Det kan også være verdien for null, og betyr ingen verdi, som er den samme som ASCII null på noen språk.
Hensikten med å ha et tomt utvalg er delvis for effektivitet i noen programmer. Ved å ha en array som er tom, kan programmet unngå å utføre meningsløse eller uriktige beregninger på matrisen. Det kan også forhindre at et program får tilgang til en matrise som ikke har en gyldig minneadresse, og forårsaker en minnetilgangsfeil som kan avslutte programmet. Noen dataspråk har innebygde bibliotek- eller klassefunksjoner som enkelt kan si om en matrise faktisk er tom i henhold til språkdefinisjonen.