|
|
Overloaded functions and operators are recognized by dbXtra and dbxtra. If an overloaded function or operator is specified as an argument to a debugger command, all of its instances are listed and the user is asked to select those which should be used as arguments to the command. For example:
(dbxtra) whatis print print is overloaded or ambiguous; do you mean 1 : card.Hand::print() 2 : card.CardGroup::print() 3 : card.Card::print() Your choice (1-3/all/n,m,...) :Responding with a digit to the prompt selects one of the instances of print. If some are required, then a comma separated list of digits is entered at the prompt. Otherwise, typing ``all'' selects all the instances.
An overloaded operator is specified as a function whose name is specified as operator<op>, where <op> is replaced by the actual overloaded operator. The exception to this is that the new and the delete operators are not prefixed with the operator string.