⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 recordswithstrings.dpr

📁 source code for Marco Cantu s book Delphi 2007 Handbook
💻 DPR
字号:
program recordswithstrings;

{$APPTYPE CONSOLE}

uses
  SysUtils;

type
  TRecordWithString = record
    Value: Integer;
    Name: string;
  end;

var
  rec1, rec2: TRecordWithString;

function GetRefCount (const s: string) : Integer;
var
  RefCountPointer: Pointer;
begin
  if Pointer(s) <> nil then
  begin
    RefCountPointer :=
      Pointer (Integer (Pointer (s)) - 8);
    Result := Integer (RefCountPointer^);
  end
  else
    Result := 0;
end;

begin
  rec1.Value := 3;
  rec1.Name := 'hello';

  writeln ('refcount: ' + IntToStr (GetRefCount(rec1.Name)));
  rec2 := rec1;
  writeln ('refcount: ' + IntToStr (GetRefCount(rec1.Name)));
  rec1.Name[3] := 'x';
  writeln ('refcount: ' + IntToStr (GetRefCount(rec1.Name)));

  readln;
end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -