zoukankan      html  css  js  c++  java
  • 使用RemObject遇到的问题

    在服务函数中用Var用参数关键字时,比如
    function TEMISLogic.UpdateMenu(var OldFields: TEMISFields): Boolean;
    begin
      Result :
    = False;
      try
        Result :
    = FEMISS.UpdateMenu(OldFields);
      except
        on E : Exception 
    do
        
    begin
          FEMISCommon.ErrorDlg(e.Message);
          Exit;
        
    end;
      
    end;
    end;

    参数中TEMISFields为RemObject的Array类型,程序运行没有任何问题一切OK,但就是有内存泄漏,一直找原因就是找不到,后来突发奇想,再添一个变量代码如下
    function TEMISLogic.UpdateMenu(var OldFields: TEMISFields): Boolean;
    var
      Fields: TEMISFields;
    begin
      Result :
    = False;
      try
        Fields := OldFields;

        Result :
    = FEMISS.UpdateMenu(Fields);
        FreeAndNil(Fields);
      except
        on E : Exception 
    do
        
    begin
          FEMISCommon.ErrorDlg(e.Message);
          Exit;
        
    end;
      
    end;
    end;
    红色部分是后来添加的,没想到这样就解决了内存泄漏,不知道有没有高手跟我说说原因。
  • 相关阅读:
    Mysql group_concat
    canvas toDataUrl 跨域问题
    Svg操作
    java 判断浏览器
    排序操作
    java 格式判断
    你真的了解 console 吗
    svg转换工具
    java图片缩放
    常见 银行贷款 名词
  • 原文地址:https://www.cnblogs.com/sonicit/p/1045531.html
Copyright © 2011-2022 走看看