Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Insert und NextGen

  Alt 3. Apr 2015, 13:52
Möglichst wenig?
Wenn man S[i] und Insert/Copy im Code hat, dann darf braucht man jetzt nur bei der Hälfte was ändern.
Beides in einer Schleife und man hat seinen Spaß.

Wenn Beides geändert wurden wäre, dann hätte nur die Schleife/Position geändert werden müssen.

Solange man nur für eine Plattform entwikelt, fällt es kaum auf, aber Multiplattform.



Menno, jetzt hab ich Code drin, der wie Folgt aussieht.

Früher so
Delphi-Quellcode:
for i := Length(Data) downto 1 do
  case Data[i] of
    '"', '\', '/': Insert('\', Data, i);
Jetzt erstmal so (damit es erstmal richtig läuft)
Delphi-Quellcode:
for i := High(Data) downto Low(Data) do
  case Data[i] of
    '"', '\', '/': Insert('\', Data, i + 1 - Low(string));
oder ich mach das daraus
Delphi-Quellcode:
for i := Length(Data) - 1 downto 0 do
  case Data[i + Low(string)] of
    '"', '\', '/': Insert('\', Data, i + 1);
oder ich steig doch um
Delphi-Quellcode:
for i := Length(Data) - 1 downto 0 do
  case Data.Chars[i] of //case Data[i + Low(string)] of
    '"', '\', '/': Data.Insert(i, '\'); // Parameter umzudrehen ist auch eine geile Angelegenheit ... zum Glück knallt es hier, nicht wie bei Pos und ContainsStr


So, daß heißt also, daß es jetzt 3 4 Systeme gibt?
Außer bei den Helpern muß man also höllisch aufpassen und wird quasi liebevoll in die Helper gedrängt.
  • Früher gab es nur die 1-Indizes
  • Gedachte hatte ich, daß es nun im NextGen 0-indiziert ist und ich nur entcheiden muß, ob 0 oder 1, bzw. NextGen oder nicht.
    Und das es zusätzlich noch die neuen Helper mit immer 0 gibt.
  • Und in Wirklichkeit gibt es nun "immer 0", "immer 1" und "manchmal so oder so" (je nach Compiler)
  • [add] {$ZEROBASEDSTRINGS OFF}
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 3. Apr 2015 um 18:56 Uhr) Grund: mit ist noch das Vierte eingefallen :)
  Mit Zitat antworten Zitat