Kann ich mir nur so vorstellen, dass du dir eine Klasse schaffst, dort die Variable als Property mit einer Set-Funktion hinterlegst und dann eine globale Variable mit einer Instanz dieser Klasse benutzt. In der Set-Funktion kannst du dann zählen, wie oft ein Wert zugewiesen wird bzw. wie oft der Wert geändert wird.
(ungetestet)
Delphi-Quellcode:
unit CountChangesUnit;
interface
type
TCountChanges =
class(TObject)
private
FVariable: integer;
FAssigned: int64;
FChanged: int64;
procedure SetVariable(Value: integer);
public
property Variable: integer
read FVariable
write SetVariable;
property Assigned: int64
read FAssigned;
property Changed: int64
read FChanged;
end;
var
Counted: TCountChanges;
implementation
procedure TCountChanges.SetVariable(Value: integer);
begin
inc(FAssigned);
if FVariable <> Value
then
inc(FChanged);
FVariable := Value;
end;
initialization
Counted := TCountChanges.Create;
finalization
FreeAndNil(Counted);
end.