Oracle® Developer Studio 12.5:使用 dbx 调试程序

退出打印视图

更新时间: 2016 年 6 月
 
 

whatis 命令

在本地模式中,whatis 命令用于输出表达式的类型或类型声明或宏定义。如果适用,它还输出 OpenMP 数据共享属性信息。

在 Java 模式中,whatis 命令用于输出标识符声明。如果标识符是类,则它将输出类的方法信息(包括所有继承方法)。

本地模式语法

whatis [-n] [-r] [–m] [+m] name

输出非类型 name 的声明,或定义(如果 name 为宏)。

whatis -t [-a] [-r] [-u] type

输出类型为 type 的声明。

whatis -e [-r] [-u] [-d] expression

输出表达式 expression 的类型。

其中:

name 是非类型或宏的名称。

type 是类型名。

expression 是有效的表达式。

macro 是宏的名称。

–a 仅输出指定类的数据成员。

–d 显示动态类型而非静态类型。

–e 表示显示表达式的类型。

–n 表示显示非类型的声明。不必指定 -n;如果键入不带选项的 whatis 命令,缺省使用该值。

–r 输出有关基类和类型的信息。

–t 表示显示类型的声明。

–u 显示类型的根定义。

–m 强制进行宏扩展,即使 dbxenv 变量 macro_expand 设置为 off 也是如此。

+m 使宏查找失效,从而能找到可能被宏投影的任何符号。

对 C++ 类或结构运行 whatis 命令时,它将提供一个列表,其中列出所有已定义的成员函数、静态数据成员、类友元以及在该类中显式定义的数据成员。未定义的成员函数不列出。

如果指定 –r(递归)选项,将添加来自继承类的信息。

–d 标志与 –e 标志一起使用时表示使用动态类型的表达式。

    对于 C++,模板相关标识符显示如下:

  • 所有模板定义通过 whatis -t 列出。

  • 函数模板实例通过 whatis 列出。

  • 类模板实例通过 whatis -t 列出。

Java 模式语法

whatis identifier

输出 identifier 的声明。

其中:

identifier 可以是类、当前类中的方法、当前帧中的局部变量或当前类中的字段。