Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.137 Beiträge
 
Delphi 12 Athens
 
#6

AW: Compilerschalter der Autoformat verhindert

  Alt 4. Feb 2021, 16:19
Da hat jemand ...
Mein Optimizer



Zitat:
Delphi-Quellcode:
    if (Value1.Nr = 0) then // Verhindern, dass Datensatz 0 sortiert wird
      Result := -1
    else if (Value2.Nr = 0) then // Verhindern, dass Datensatz 0 sortiert wird
      Result := 1
"mach nichts" heißt doch eigentlich 0?
Delphi-Quellcode:
    if (Value1.Nr = 0) or (Value2.Nr = 0) then // Verhindern, dass Datensatz 0 sortiert wird
      Result := 0

PS:
Delphi-Quellcode:
  Sort(TComparer<TStandardName>.Construct(
    function(const Value1, Value2: TStandardName): Integer
    begin
      if (Value1.Nr = 0) or (Value2.Nr = 0) then // Verhindern, dass Datensatz 0 sortiert wird
        Result := 0
      else if SameStr(Value1.Name, Value2.Name) then
        Result := CompareValue(Value1.Nr, Value2.Nr)
      else
        Result := CompareStr(Value1.Name, Value2.Name);
    end));

  // der erste Kommentar ist klar, aber der Zweite ist nutzlos.
  // "Bei gleichen Namen" steht lesbar direkt davor, vor allem wenn man IF-SameStr nutzen würde
  // und "nach Nr sortieren" kommt schön sichtbar gleich nach dem THEN

  // bzw.
  Sort(TComparer<TStandardName>.Construct(
    function(const Value1, Value2: TStandardName): Integer
    begin
      if (Value1.Nr = 0) or (Value2.Nr = 0) then
        Exit(0); // Verhindern, dass Datensatz 0 sortiert wird
      Result := CompareStr(Value1.Name, Value2.Name);
      if Result = 0 then
        Result := CompareValue(Value1.Nr, Value2.Nr);
    end));
// Eventuell AnsiCompareStr statt CompareStr ... aber damit man das Schema besser erkennt
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 4. Feb 2021 um 16:37 Uhr)
  Mit Zitat antworten Zitat