回 帖 发 新 帖 刷新版面

主题:[讨论]IF 的运算过程

以前好像有讨论过,
不过现在找不着了.

VFP里的IF只有复合语段,
不像VB里有单行检测.

在IF的判断过程中,
是从左到右的,
有了决定性的答案后,
后面的条件便不再执行了.

注意,缩减代码的行数,
在VFP里也是有必要的.

大家研究一下这一段,
猜猜它的各种变化:

IF (.T. and messagebox("ABC",0)=1) or messagebox("BBB",0)=1
   messagebox("KKK")
EndIf

回复列表 (共3个回复)

沙发

有的时候真的很有趣,
假如有某个变量我们甚至不知道它是什么类型,
如果单纯这样检查也许会出错:
if T1>0
如果这样就避免出错了:
if type("T1")="N" and T1>0

如果不知道某表是否已经打开,
又想检查它的记录数:
if type("RecCount('表1')")="N" and RecCount('表1')>0

板凳

是的,VFP有的时候真的很有趣!

3 楼

确切的来讲,不是 VFP 有的时候很有趣,而是使用它的人有的时候很有趣!

我来回复

您尚未登录,请登录后再回复。点此登录或注册