---
title: initWithSet
framework: kernel
role: pseudoSymbol
path: kernel/osset/1808228-initwithset
---

# initWithSet

Initializes a new OSSet populated with the contents of another OSSet.

## Declaration

```occ
virtual bool initWithSet(
 const OSSet *set, 
 unsigned int capacity = 0); 
```

## Parameters

- `set`: A set whose contents will be placed in the new instance.
- `capacity`: The initial storage capacity of the new set object. If 0, the capacity is set to the number of objects in set; otherwise capacity must be greater than or equal to the number of objects in set.

## Return Value

Return Value true on success, false on failure.

## Overview

Overview Not for general use. Use the static instance creation method withSet instead. set must be non-NULL. If capacity is nonzero, it must be greater than or equal to count. The new set will grow as needed to accommodate more key-object pairs (unlikeCFMutableSet, for which the initial capacity is a hard limit). The objects in set are retained for storage in the new set, not copied.

## See Also

### Miscellaneous

- [containsObject](kernel/osset/1808031-containsobject.md)
- [copyCollection](kernel/osset/1808046-copycollection.md)
- [ensureCapacity](kernel/osset/1808068-ensurecapacity.md)
- [flushCollection](kernel/osset/1808084-flushcollection.md)
- [free](kernel/osset/1808104-free.md)
- [getAnyObject](kernel/osset/1808128-getanyobject.md)
- [getCapacity](kernel/osset/1808152-getcapacity.md)
- [getCapacityIncrement](kernel/osset/1808173-getcapacityincrement.md)
- [getCount](kernel/osset/1808189-getcount.md)
- [initWithArray](kernel/osset/1808200-initwitharray.md)
- [initWithCapacity](kernel/osset/1808213-initwithcapacity.md)
- [initWithObjects](kernel/osset/1808221-initwithobjects.md)
- [isEqualTo(const OSMetaClassBase *)](kernel/osset/1808235-isequalto.md)
- [isEqualTo(const OSSet *)](kernel/osset/1808239-isequalto.md)
- [member](kernel/osset/1808245-member.md)
- [merge(const OSArray *)](kernel/osset/1808250-merge.md)
- [merge(const OSSet *)](kernel/osset/1808253-merge.md)
- [removeObject](kernel/osset/1808257-removeobject.md)
- [serialize](kernel/osset/1808260-serialize.md)
- [setCapacityIncrement](kernel/osset/1808264-setcapacityincrement.md)
- [setObject](kernel/osset/1808269-setobject.md)
- [withArray](kernel/osset/1808277-witharray.md)
- [withCapacity](kernel/osset/1808282-withcapacity.md)
- [withObjects](kernel/osset/1808287-withobjects.md)
- [withSet](kernel/osset/1808291-withset.md)
