---
title: ensureCapacity
framework: kernel
role: pseudoSymbol
path: kernel/osarray/1808132-ensurecapacity
---

# ensureCapacity

Ensures the array has enough space to store the requested number of objects.

## Declaration

```occ
virtual unsigned int ensureCapacity(
 unsigned intnewCapacity); 
```

## Parameters

- `newCapacity`: The total number of objects the array should be able to store.

## Return Value

Return Value The new capacity of the array, which may be different from the number requested (if smaller, reallocation of storage failed).

## Overview

Overview This function immediately resizes the array, if necessary, to accommodate at least newCapacity objects. If newCapacity is not greater than the current capacity, or if an allocation error occurs, the original capacity is returned. There is no way to reduce the capacity of an OSArray.

## See Also

### Miscellaneous

- [copyCollection](kernel/osarray/1808122-copycollection.md)
- [flushCollection](kernel/osarray/1808145-flushcollection.md)
- [free](kernel/osarray/1808156-free.md)
- [getCapacity](kernel/osarray/1808168-getcapacity.md)
- [getCapacityIncrement](kernel/osarray/1808174-getcapacityincrement.md)
- [getCount](kernel/osarray/1808184-getcount.md)
- [getLastObject](kernel/osarray/1808193-getlastobject.md)
- [getNextIndexOfObject](kernel/osarray/1808202-getnextindexofobject.md)
- [getObject](kernel/osarray/1808210-getobject.md)
- [initWithArray](kernel/osarray/1808216-initwitharray.md)
- [initWithCapacity](kernel/osarray/1808222-initwithcapacity.md)
- [initWithObjects](kernel/osarray/1808226-initwithobjects.md)
- [isEqualTo(const OSArray *)](kernel/osarray/1808231-isequalto.md)
- [isEqualTo(const OSMetaClassBase *)](kernel/osarray/1808236-isequalto.md)
- [merge](kernel/osarray/1808242-merge.md)
- [removeObject](kernel/osarray/1808246-removeobject.md)
- [replaceObject](kernel/osarray/1808249-replaceobject.md)
- [serialize](kernel/osarray/1808255-serialize.md)
- [setCapacityIncrement](kernel/osarray/1808259-setcapacityincrement.md)
- [setObject(const OSMetaClassBase *)](kernel/osarray/1808261-setobject.md)
- [setObject(unsigned int, const OSMetaClassBase *)](kernel/osarray/1808266-setobject.md)
- [withArray](kernel/osarray/1808272-witharray.md)
- [withCapacity](kernel/osarray/1808279-withcapacity.md)
- [withObjects](kernel/osarray/1808285-withobjects.md)
