把断点设在a跟踪一下,应该不会的,可能是在别处或什么事件中又调用了a或b

解决方案 »

  1.   

    你的A执行几遍呀
    还有你B要反回的只要付该你的函数名
    a:=b('xxx', intParameter);
      

  2.   

    你不会把b的定义也写到a的定义后面了吧 :)
    正确的话不可能会执行两遍的,肯定是你哪里写错了,看看你的b的定义写在哪里了,单步执行一下看看?
      

  3.   

    我查出来了,原来在程序初始化时,Create了窗口。 这个窗口的Oncreate中调用b了。。
    得出的经验: 窗口在需要创建时再创建。。创建一个FORM时,Delphi自动在初始化段中增加了pplication.CreateForm(TFormAbout, FormAbout)这样的代码,这样代码其实是不需要的。。
    谢谢上面各位大侠的帮助!!!
      

  4.   

    再请教各位,在Delphi调试一个函数时能得到此函数是被谁调用的吗?
    我知道在VC中调试时是可以的,用Call stack,那Delphi有这样的功能吗?
      

  5.   

    基本工有问题,function好像需要返回吧