一般默认定义为
type
 tform1=class(tform)
...
...
var
 form1:tform1;可否不要tform1=class(tform)
直接form1:class(tform)一个错误的循环
for k:=1 to 10 do 
 if data[k]<min then
min:=[k];书上说最后的k值=11,让我觉得很奇怪?谁知道请具体告诉我

解决方案 »

  1.   

    可否不要tform1=class(tform)
    直接form1:class(tform),应该是不行吧
      

  2.   

    第一个不能那样写,上面的定义是从标准窗口继承你现在设计的窗口(还要加上你的控件和方法事件等),直接写语法不行,且不是你设计的窗口。
    第二个,在执行时,每循环一次k都会加1,程序会把k跟最后的10做比较,没超过就继续执行,所以当k=11时,循环才退出。
      

  3.   

    这可以说是一个“基本功”的问题
    type
     TForm1=class(TForm)
    这里TForm1 是自己定义的一个类,他的基类是后面的TForm( 这个是系统自己的标准窗口)
    可以在自己定义的这个类TForm1中加入你在设计时的控件,方法,事件处理函数等。
    var
     Form1:TForm1
    这里是定义变量或对象,以后运行时用的就是Form1这个对象,而不是TForm1.(如小熊说的是你设计的窗体)
    所以这完全符合语法结构。第二个是没有明白for循环语句的执行过程:每循环一次k都会加1,当执行到k=10后k加1变为11,然后去和上限作比较11>10退出循环,所以执行完k当然等于11了。