Hallo zusammen,
in der System.DateUtils
unit gibt es ein TTimeSpan.
Das ist eine abstrakte Klasse und enthält abstrakte, virtuelle Funktionen.
Normalerweise würde ich die class variable "TTimeSpan-.Local" benutzen,
aber ich verlasse mich ungerne darauf das das schon jemand für mich initialisiert hat
(Weil es keine initialisation Sektion gibt).
diTimeZone := (((TTimeZone.Local.UtcOffset.Hours * 60) + TTimeZone.Local.UtcOffset.Minutes) * 60) + TTimeZone.Local.UtcOffset.Seconds;
Dann versuche ich das selbst zu initialisieren:
Delphi-Quellcode:
with TTimeZone.Create do
begin
diTimeZone := (((Local.UtcOffset.Hours * 60) + Local.UtcOffset.Minutes) * 60) + Local.UtcOffset.Seconds;
Free;
end;
und bekomme natürlich die Warnings in der Art:
Zitat:
[dccosx Warning] MyDeviceInfo.pas(594): W1020 Constructing instance of 'TTimeZone' containing abstract method 'TTimeZone.DoGetID'
Ich frage mich wie soll diese Klasse benutzt werden (selber ableiten wird es doch wohl nicht sein) ?
Ist TTimeSpan.Local immer und auf Allen Platformen korrent initialisiert ?
Vielleicht ist es ja auch ein Bug, oder ein Feature
Rollo