W1068 Das interne Ändern von Strings wird möglicherweise künftig nicht mehr unterstützt (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)


Als Warnung gibt diese Meldung an, dass Sie einen String intern (im betreffenden String selbst) ändern. Die folgende übliche Operation (Indizierung eines Strings und Änderung des Strings) kann beispielweise nicht mit unveränderbaren Strings ausgeführt werden:

 S[1] := 'A';

Wenn Sie eine derartige String-Operation verwenden, geben die mobilen Delphi-Compiler die Warnung W1068 aus: "Das interne Ändern von Strings wird möglicherweise künftig nicht mehr unterstützt."

Sie sollten sich darüber im Klaren sein, dass dieses völlig übliche Vorgehen möglicherweise von künftigen Sprachänderungen in den Delphi-Desktop-Compilern nicht unterstützt wird. Dann wird diese Warnung durch einen Fehler ersetzt.

Unveränderbare Strings (Strings, die nicht indiziert und bearbeitet werden können) werden von den mobilen Delphi-Compilern unterstützt; DCCIOSARM und DCCIOS32 unterstützen nur unveränderbare, 0-basierte Strings.

Verwenden Sie zur String-Behandlung die TStringHelper-Funktionen.
Verwenden Sie für die interne String-Bearbeitung TStringBuilder.

Führen Sie eine der folgenden Aktionen aus, um unveränderbare Strings zu testen:

  • Setzen Sie die Compiler-Direktive {$WARN IMMUTABLE_STRINGS <ON|ERROR>}.
    • ON aktiviert die Anzeige der Warnung W1068, wenn Ihr Code die Strings intern ändert.
    • ERROR aktiviert diese Meldung als Fehler, E1068.
  • Setzen Sie auf der Seite Hinweise und Warnungen die Warnung "Das interne Ändern von Strings wird...." auf "True" oder "Fehler".

Siehe auch