Debugging a Program With dbx

whatis name

Use whatis to print the definitions of function and class templates and instantiated functions and classes

For a class template:


(dbx) whatis Array
template<class T> class Array
To get the full template declaration, try `whatis -t Array<int>';

For a function template:


(dbx) whatis square
More than one identifier `square'.
Select one of the following names:
 0) Cancel
 1) function template instance: `square(int, int*)
 2) function template instance: `square(double, double*)
 3) `a.out`square
> 3
template<class C> void square(C num, C *result);

For a class template instantiation:


(dbx) whatis -t Array<double> 
class Array<double>; {
public:
    int Array<double>::getlength()
    double &Array<double>::operator [](int i); 
    Array<double>::Array<double>(int l); 
    Array<double>::~Array<double>();
private:
    int length; 
    double *array;
};

For a function template instantiation:


(dbx) whatis square(int, int*)void square(int num, int *result);