Language > Objects > Operator Overloading > Overloading the Help and Print Procedures

# Overloading the Help and Print Procedures

If a scalar object that inherits from IDL_Object is entered on the IDL command line, then the Implied Print functionality will call the object’s `_overloadImpliedPrint` function method, which can return a variable of any type that is used as the output. The default behavior for `IDL_Object::_overloadImpliedPrint` is to return the implicit self variable, which causes normal print output for a scalar object reference.

If the PRINT/PRINTF procedure is called with a scalar object that inherits from the IDL_Object class, PRINT/PRINTF calls the object’s `_overloadPrint` function method, which can return a variable of any type that is used as the PRINT/PRINTF output. The default behavior for `IDL_Object::_overloadPrint` is to return the implicit self variable, which causes normal print output for a scalar object reference.

If the HELP procedure is called with a scalar object that inherits from IDL_Object, HELP calls the object’s `_overloadHelp` function method. This method must return a scalar string or array of strings containing the “help” information for the object, which is used as the output for the HELP procedure. The default behavior for `IDL_Object::_overloadHelp` is to return the normal help output for a scalar object reference.

The `_overloadHelp` argument Varname is set to the name of the variable supplied to the HELP procedure. You may want to use this variable name when constructing the help output for your object class.

See Example: Overloading the Help and Print Procedures for a complete code example.