【发布时间】:2019-09-12 21:41:06
【问题描述】:
我正在尝试使用几年前由程序员编写的一些 Visual FoxPro 9.0 代码,这些代码现在早已不复存在。 ALLTRIM() 有多种用途,包括在要传递的字段名称前加一个双星号,例如:
fred = ALLTRIM( **barney )
其中 Barney 是表中的字符字段。当我尝试在 VFP 会话中运行该行时,它会出错并显示“缺少功能 )”。但是支持我不理解的代码让我很不舒服——“**”是做什么的?
我已尝试将该字段存储到 memvar,以防调用此字段的代码中存在 SCATTER,而导致的错误没有任何变化。我尝试将其他数据类型(数字和布尔值)存储到 memvar,仍然没有变化。我已经在 dBase、FoxBase、FoxPro、VFP 中进行了近 35 年的编程——我不记得以前遇到过这种情况。然而,程序运行没有错误,我只是不明白它在做什么。
如果有任何问题,相关代码将存储在表中的备注字段中,然后通过 EXECSCRIPT() 调用进行调用。代码使用的一些表(但不是包含代码的表)是 SQL Server 表,通过游标适配器访问 - 所以在我的示例中,“barney”很可能是游标适配器中的一个字段,而不是 . DBF。
【问题讨论】:
标签: visual-foxpro