2Pascal-新时代的Pascal

 找回密码
 立即注册
搜索
热搜: fastreport
查看: 15305|回复: 104
打印 上一主题 下一主题

RO SDK 9.0.97.1245 带源码测试版 支持手机开发 带破解 D7-RAD10.1

   关闭 [复制链接]

29

主题

73

帖子

725

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
725
楼主
发表于 2016-2-23 15:07:40 | 显示全部楼层
京东购书支持本站
RO 接口中任何 对象 做 var 都会 变成 2 个对象
假设接口如下:
procedre TestVar(var Aval:TOjbect);

调用代码。
begin
  Aval1: TObject;
  Aval2: TObject;
begin
  Aval1 := TObject.Create;
  Aval2 := Aval1;
  try
    //Some Code;
    TestVal(AVal2);
    //Some Code;
  fianlly
    if (Aval2 <> Aval1) and (Aval2 <> nil) then
      FreeAndNil(AVal2);
    FreeAndNil(AVal1);
  end;
end;

另外 也可以 修改接口为:
procedre TestVar(in Inval:TOjbect; out Outval: TObject);

调用代码。
begin
  Aval1: TObject;
  Aval2: TObject;
begin
  Aval1 := TObject.Create;
  Aval2 := nil;
  try
    //Some Code;
    TestVal(AVal1, Aval2);
    //Some Code;
  fianlly
    if (Aval2 <> nil) then
      FreeAndNil(AVal2);
    FreeAndNil(AVal1);
  end;
end;
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|新时代Pascal论坛

GMT+8, 2024-5-19 02:52 , Processed in 0.064682 second(s), 23 queries .

Powered by Discuz! X3

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表