Delphi 关于结构指针的传递问题

今天遇到一个关于结构指针的问题:

  type
  TWeighInfo = record
      RecNO : Integer ;
      BarCode : string ;
      MatCode : string ;
      Weigh : Double ;
      Qty : Double ;     //bom 的重量
      DifQty : Double ;  //差异
  end;
   TPWeighInfo = ^TWeighInfo ;

     Function  GetWieghInfo :TPWeighInfo               --返回TWeighInfo    没有问题  ,  返回TPWeighInfo        引用类型的值为空。

VAR

   WeighInfo : TWeighInfo ;

BEGIN

                 WITH WeighInfo  DO

                BEGIN

                         RecNO :=1 ;

                        BarCode :='abc000001' ;

                        MatCode := 'xxxxxxxx' ;

                        Qty := 0;

                END;

    Result := @WeighInfo  ;

   --在函数体内。  Result 的 Barcode的值没有问题。  出函数为空值。

END; 

-------------接收端。

Procedure ReceiveData ;

var

  PWeighInfo  :TPWeighInfo ;

begin

PWeighInfo   := GetWieghInfo ;

  Showmesage( PWeighInfo ^.BarCode )  ;  ---等于空值。

Showmesage( PWeighInfo ^.RecNO.Tostring )  ;  ---等于1。

end;

高手帮忙解答一下。 这个是什么问题?   为什么记录类型的指针 出函数后引用类型为空了呢???

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值