The IDL_Object::_overloadEQ function method defines the behavior of the relational equality (EQ) operator for instances of objects that inherit from the IDL_Object class.
This method is designed to replicate the default behavior of objects that do not use operator overloading. As a result, object classes that do inherit from the IDL_Object class but that do not override this particular method will behave in the same manner as object classes that do not inherit from the IDL_Object class.
Tip: If you write an object class that inherits from IDL_Object and overloads this method, you can call the superclass method directly to achieve the default behavior for specific cases.
Syntax
In most cases, this method is called indirectly by specifying an object reference as an argument on either the left or right side of the EQ operator. When called explicitly, the syntax is:
Result = Obj->[IDL_Object::]_overloadEQ( Left, Right )
Return Value
This method is called when an operand to the EQ operator is an instance of a class that inherits from the IDL_Object class, but that does not implement its own _overloadEQ method. The return value replicates the behavior of the EQ operator with an object that does not inherit from the IDL_Object class.
Arguments
Left
The argument that appears on the left side of the operator. If the argument on the left side is the first instance of the overloaded object class, Left will be the same as the implicit self argument.
Right
The argument that appears on the right side of the operator. If the argument on the right side is the first instance of the overloaded object class, Right will be the same as the implicit self argument.
Keywords
None
Routine Signature
To overload the EQ operator for an object class, implement a method with the following signature:
FUNCTION class::_overloadEQ, Left, Right
The return value of this function should be the result of the overloaded EQ operation.
Version History