在后台交易模拟中发现Variable全局变量好像有问题,做一个测试程序:后台交易运行,固定时间间隔5秒。
Variable: Myholding=0;
DEBUGFILE('C:\test.txt','VS:%.0f',Myholding);
IF ISLASTBAR THEN
BEGIN
IF Myholding=0 THEN
BEGIN
Myholding:=1;
DEBUGFILE('C:\test.txt','Myholding:%.0f',Myholding);
END
END
按照我的理解,在Myholding:=1后,应该保持为1。但实际测试文件的结果如下:
2010-07-28 11:12:00.265 VS:0
2010-07-28 11:12:00.265 Myholding:1
2010-07-28 11:12:05.734 VS:0
2010-07-28 11:12:05.734 Myholding:1
2010-07-28 11:12:10.718 VS:0
2010-07-28 11:12:10.718 Myholding:1
2010-07-28 11:12:15.718 VS:0
2010-07-28 11:12:15.718 Myholding:1
2010-07-28 11:12:20.734 VS:0
2010-07-28 11:12:20.734 Myholding:1
2010-07-28 11:12:25.718 VS:0
2010-07-28 11:12:25.718 Myholding:1
2010-07-28 11:12:30.734 VS:0
2010-07-28 11:12:30.734 Myholding:1
2010-07-28 11:12:35.718 VS:0
2010-07-28 11:12:35.734 Myholding:1
能请教一下是怎么回事?Variable定义的全局变量为什么被不停地初始化了呢?