文章目录
第十八章 Caché 变量大全 $THIS 变量 - 大纲
- 描述
包含当前类上下文。
大纲$THIS描述
$THIS包含当前的类上下文。实例方法的类上下文是当前对象引用(OREF)。类方法的类上下文是作为字符串值的当前类名。例如,如果从类方法中发出命令DO ..method()或SET ..property = value,则使用$THIS的当前值来解析..上下文。在对象实例内进行引用时,首选相对点语法(..)。
$THIS通常在对象实例内并且调用另一个对象上的函数时使用。在这种情况下,可以使用$THIS将当前类上下文传递给该函数,以便它可以将值返回给当前对象实例。
当$THIS不包含有效的对象引用时,Caché返回<NO CURRENT OBJECT>错误。
$THIS可以在以下环境中使用:
SET x = ##class(otherclassname).method($THIS) DO ##class(superclass)$THIS.method(args)
不能使用SET命令将此特殊变量设置为值。尝试这样做会导致<FUNCTION>错误。