小编Tom*_*vat的帖子

我们在Delphi中创建的每个类都需要具有析构函数吗?

在Delphi应用程序中创建自定义类时,我使用标准过程:

TCustomClass = Class
 private
  var1,var2 : integer/string/Real/Boolean...
  procedure P1...
  function F1...
 public
  constructor Create;
end;

...

CustomClass := TCustomClass.create;
Run Code Online (Sandbox Code Playgroud)

我想知道我是否还必须同时创建Destructor过程,或者在应用程序关闭时资源会自动释放吗?

我总是使用Application作为所有者,很少使用Self或Nil,而且我不记得我见过有人在我在Internet上看到的类中声明Destructor,除了有人使用指针的情况。

如下所述,Delphi中的析构函数背后的逻辑是否与C ++中的相同:

每个类都应该有一个虚拟的析构函数吗?

提前致谢。

EDIT1:正如Free Consulting所述,我忘记说变量之一可能是TBitmap类型

delphi destructor class

5
推荐指数
1
解决办法
398
查看次数

Delphi在exe/dll中添加和使用多个资源文件*.RES

我有关于在delphi中使用*.RES文件的问题.

例如,我有两个资源文件:1.RES和2.RES.这两个RES文件都包含不同的图像,称为IMAGE1(jpg).

我使用以下命令将RES文件添加到Delphi应用程序:

{$R '1.RES'}
{$R '2.RES'}
Run Code Online (Sandbox Code Playgroud)

如何指定要使用的资源文件?如果我只有一个RES文件,当我想要检索图像时,我会使用这些命令:

var RS : TResourceStream;
    jpg : TjpegImage;

RS := TResourceStream.Create(HInstance,'IMAGE1',RT_RCDATA);
jpg.LoadFromStream(RS);
Run Code Online (Sandbox Code Playgroud)

现在,如果我有2个RES文件,怎么知道它会加载什么?我想我需要控制HInstance但我无法掌握如何.

windows delphi

2
推荐指数
1
解决办法
1580
查看次数

标签 统计

delphi ×2

class ×1

destructor ×1

windows ×1