ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest>::IStructuralComparable::CompareTo Method (Object^, IComparer^)
Compares the current ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest> instance to a specified object by using a specified comparer and returns an integer that indicates whether the current object is before, after, or in the same position as the specified object in the sort order.
Assembly: mscorlib (in mscorlib.dll)
private: virtual int CompareTo( Object^ other, IComparer^ comparer ) sealed = IStructuralComparable::CompareTo
Parameters
- other
-
Type:
System::Object^
The object to compare with the current instance.
- comparer
-
Type:
System.Collections::IComparer^
An object that provides custom rules for comparison.
Return Value
Type: System::Int32A signed integer that indicates the relative position of this instance and other in the sort order, as shown in the following able.
Vaue | Description |
|---|---|
A negative integer | This instance precedes other. |
Zero | This instance and other have the same position in the sort order. |
A positive integer | This instance follows other. |
| Exception | Condition |
|---|---|
| ArgumentException | other is not a ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest> object. |
This member is an explicit interface implementation. It can only be used when the ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest> instance is cast to an IStructuralComparable interface.
This method lets you define customized comparisons of ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest> objects. For example, you can use this method to order ValueTuple<T1, T2, T3, T4, T5, T6, T7, TRest> objects based on the value of a specific component.
Although this method can be called directly, it is most commonly called by collection-sorting methods that include IComparer parameters to order the members of a collection. For example, it is called by the Array::Sort(Array^, IComparer^) method and the Add method of a SortedList object that is instantiated by using the SortedList::SortedList(IComparer^) constructor.
Caution |
|---|
The IStructuralComparable::CompareTo method is intended for use in sorting operations. It should not be used when the primary purpose of a comparison is to determine whether two objects are equal. To determine whether two objects are equal, call the IStructuralEquatable::Equals method. |
Available since 4.7
