首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

怎么返回多种类型数据

2013-02-18 
如何返回多种类型数据有没有类似的写法:Function GetInfo(x,y):TMapInfo or TNewMapInfo请指点。谢谢![解

如何返回多种类型数据
有没有类似的写法:
Function GetInfo(x,y):TMapInfo or TNewMapInfo;
请指点。谢谢!
[解决办法]
Function GetInfo(x,y):TMapInfo;
当然有,返回一个记录类型
不过出于安全性和简单的考虑,记录类型的传递最好还是以地址传递或者指针传递,如:
procedure GetInfo(var MapInfo: TMapInfo; X, Y: Integer);
如果用上面的Function直接返回Function里面的一个记录变量,这样很不安全,
因为函数里面变量的存放位置是栈上,退出函数后变量也就释放了,你可以去看下堆栈的相关知识。
[解决办法]
或者建立一个并集的类型:
Ttype2=record
isnew:boolean;
d1:Tmapinfo;
d2:Tnewmapinfo;
end;
当然,还是返回指针最好

热点排行