---
title: compare
framework: corefoundation
role: symbol
role_heading: Instance Property
path: corefoundation/cfbinaryheapcallbacks/compare
---

# compare

The callback used to compare values in the binary heap in some operations. This field cannot be NULL.

## Declaration

```swift
var compare: ((UnsafeRawPointer?, UnsafeRawPointer?, UnsafeMutableRawPointer?) -> CFComparisonResult)!
```

## Parameters

- `ptr1`: First value to compare.
- `ptr2`: Second value to compare.
- `info`: Not used. Should always be NULL.

## Return Value

Return Value CFComparisonResult.compareLessThan if ptr1 is less than ptr2, CFComparisonResult.compareEqualTo if ptr1 and ptr2 are equal, or CFComparisonResult.compareGreaterThan if ptr1 is greater than ptr2.

## See Also

### Callbacks

- [CFBinaryHeapApplierFunction](corefoundation/cfbinaryheapapplierfunction.md)
- [copyDescription](corefoundation/cfbinaryheapcallbacks/copydescription.md)
- [release](corefoundation/cfbinaryheapcallbacks/release.md)
- [retain](corefoundation/cfbinaryheapcallbacks/retain.md)
- [version](corefoundation/cfbinaryheapcallbacks/version.md)
