【发布时间】:2009-09-30 11:27:32
【问题描述】:
我目前在 Vista 下使用 CodeGear Delphi 2007。 我的应用程序在一些相当繁重的计算过程中返回内存不足错误。 .exe 文件从 150 Mb 增长到惊人的 2 Gb(!哈哈)
关于这个问题:
1) 我正在将一些数组更改为 arraylist 但是它给了我一些相当困难的问题来解决(见下面的示例)
2) 使用多维结构并需要对代码进行少量更改的建议非常感谢!
现在称呼成员的旧方式是:
function TResults.GetTriangleA(ComNr, triangleA, PtNr : integer) : single;
Begin
try
result := ListTriangleRes[TriangleA - 1].GetA(ComNr, PtNr);
还有 TriangleResult 类:
TTriangleRes = class(TResults)
private
IndexPoint1, IndexPoint2, Indexpoint3 : integer;
MyA : array of array [1..3] of single;
MyB : array of array [1..3] of single;
在这里,我正在尝试使用新的arraylist,但到目前为止还不是很成功
function TResults.GetTriangleVz(ComNr, triangleA, PtNr : integer) : single;
Var
MyTriangleRes: TTriangleRes;
MyObj: Tobject;
begin
MyTriangleRes:= TTriangleRes.Create ;
try
MyObj := ListTriangleRes[TriangleA - 1] ;
result := MyObj <<<<?????? how to>>>>MyTriangleRes.GetVz(ComNr, PtNr);
马克
爱德华
【问题讨论】: