## IEquatable class


Defines a method that determines the equality of two objects. Objects of this class should only be allocated using [System::MakeObject()](../makeobject/) function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into [System::SmartPtr](../smartptr/) pointer and use this pointer to pass it to functions as argument.

```cpp
template<typename T>class IEquatable : public virtual System::Object
```


| Parameter | Description |
| --- | --- |
| T | The type of the compared objects |
## Methods

| Method | Description |
| --- | --- |
| virtual [Equals](./equals/)(T) | Determines if the the current and specified objects are equal. |

## See Also

* Class [Object](../object/)
* Namespace [System](../)
* Library [Aspose.Page for C++](../../)
