关于form的调用有关问题?

关于form的调用问题??我的程序中调用form的方法如下:例:调用temp窗体temp:Ttemp.create(self)temp.showm

关于form的调用问题??
我的程序中调用form的方法如下:
例:调用temp窗体

temp:=Ttemp.create(self);
temp.showmodal;
temp.free;

这种方法是否正确??应该如何调用??
解释下下

有个需求:在一个添加数据的窗体中   调用一个查询窗体。选择查询的结果  
返回原窗体。添加数据

这种情况怎么调用??


[解决办法]
一般写成这样, 以保证创建的实例对象能够及时回收:
temp := Ttemp.create(self);
try
temp.showmodal;
finally
temp.free;
end;
[解决办法]
也可以这样:

temp := Ttemp.create(self);
try
temp.showmodal;
finally
FreeAndNil(Temp);
end;

供参考使用。