Functions.ProcName 方法 (Int32) | |
返回激活实体的名称。
命名空间:
XSharp.Core
程序集:
XSharp.Core (在 XSharp.Core.dll 中) 版本:2.22 GA
语法 FUNCTION ProcName(
wActivation AS LONG
) AS STRING
public static string ProcName(
int wActivation
)
查看代码参数
- wActivation
- 类型:Int32
指定要查询的激活。
值为 0 指当前激活,值为 1 指上一个激活,依此类推。
默认值为 0。
返回值
类型:
String
对于当前激活,ProcName() 返回当前过程、函数或方法的名称。
对于先前的激活,ProcName() 返回调用当前实体的过程、函数或方法的名称。
备注
ProcName() 查询 X# 激活堆栈以确定当前正在执行的过程、函数或方法的名称。
ProcName() 与 ProcFile() 和 ProcLine() 一起使用,以报告调试信息。ProcLine() 和 ProcName() 受到应用程序菜单中的两个选项的控制:
1. 应用程序编译器选项显示 CA-Clipper 兼容性选项列表,其中之一是 PROCNAME/PROCLINE:
如果选择了 PROCNAME/PROCLINE,这些函数将准确编译和运行。
如果未选择 PROCNAME/PROCLINE,这些函数将编译和运行,但可能不会产生准确的结果。
2. 应用程序属性显示调试选项。
如果选择了此选项,这些函数即使在未选择 PROCNAME/PROCLINE 的情况下也会产生准确的结果。
SET PROCNAME 命令在实体级别覆盖这些编译器选项和应用程序设置。有关更多信息,请参见 SET PROCNAME 条目。
示例
此示例呈现一个可以在程序开发的调试阶段调用的函数,以显示激活堆栈及行号:
1FUNCTION ListStack() AS VOID
2 LOCAL wActivation := 1 AS DWORD
1DO WHILE "" != ProcName(wActivation)
2 ? "调用自:", ProcName(wActivation),;
3 "(" + NTrim(ProcLine(wActivation))+ + ")"
4 ++wActivation
5ENDDO
参见