AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Autovervollständigen geht manchmal nicht
Thema durchsuchen
Ansicht
Themen-Optionen

Autovervollständigen geht manchmal nicht

Ein Thema von Edelfix · begonnen am 4. Jun 2018 · letzter Beitrag vom 5. Jun 2018
Antwort Antwort
Seite 2 von 2     12   
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 11:25
Außerdem kannst du nicht innerhalb eines With-Statement-Blocks debuggen. Das ist der größte Horror.
Sag mir mal hier die Werte für Count, Sorted und CaseSensitive:

Delphi-Quellcode:
procedure Test;
var
  StringList: TStringList;
begin
  with TStringList.Create do
  begin
    Add('asdfasdf');
    if Count > 0 then
    begin
      Sorted := CaseSensitive;
    end;
    Free;
  end;
end;
  Mit Zitat antworten Zitat
Edelfix

Registriert seit: 6. Feb 2015
Ort: Stadtoldendorf
216 Beiträge
 
Delphi 10.4 Sydney
 
#12

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 12:03
Danke für die Hinweise. Ich habe den Fehler finden können.
Es war tatsächlich eine Kreuzreferenz. Vielen Dank nochmal an alle.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 12:39
Ich lese immer wieder dass man auf "with" verzichten soll. Was ist die Begründung?
Delphi-Quellcode:
procedure TForm1.irgendwas();
begin
  with IrgendwasMitTRect do
    Width := Right - Left;
end;
Das ging viele Jahrzehnte gut, bis Delphi-Referenz durchsuchenSystem.Types.TRect.Width erfunden wurde.

Delphi-Quellcode:
Self.Width := Rect.Right - Rect.Left;
// wurde zu
Rect.Width := Rect.Right - Rect.Left;
$2B or not $2B
  Mit Zitat antworten Zitat
Edelfix

Registriert seit: 6. Feb 2015
Ort: Stadtoldendorf
216 Beiträge
 
Delphi 10.4 Sydney
 
#14

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 14:44
Worum es mir geht ist eher so ein Dialog:

Ich: "Hey Chef wir sollte auf "with" verzichten."
Chef: "Warum das denn?"
Ich: "Weil das früher in TRect Probleme gab."
Chef: "Wir haben Delghi 10.2 im Einsatz. Was interessieren mich Probleme von Gestern?"

Gibt es aktuelle Beispiel oder sollte ich das Gespräch von ober erst gar nicht anfangen?
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.070 Beiträge
 
Delphi 10.4 Sydney
 
#15

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 14:48
Worum es mir geht ist eher so ein Dialog:

Ich: "Hey Chef wir sollte auf "with" verzichten."
Chef: "Warum das denn?"
Ich: "Weil das früher in TRect Probleme gab."
Chef: "Wir haben Delghi 10.2 im Einsatz. Was interessieren mich Probleme von Gestern?"

Gibt es aktuelle Beispiel oder sollte ich das Gespräch von ober erst gar nicht anfangen?
Debuggt ihr eure Anwendungen nicht?
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 14:50
Das ist ein Beispiel für ein eventuell "zukünftiges" Problem.

Früher ging es mal, dann wurden Klassen/Records umgebaut/erweitert und plötzlich ging es nicht mehr, aber es knallt meistens auch nicht, wenn plötzlich etwas doppelt vorhanden ist, in verschiedenen Namespaces.
ALSO, jetzt geht es in 10.2, aber in 10.4 könnte es wieder anders aussehn.
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#17

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 15:27
sollte ich das Gespräch von ober erst gar nicht anfangen?
Definitiv nicht! Solche Dinge erledigt man besser in Eigenverantwortung ohne zu fragen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Elrond

Registriert seit: 29. Sep 2014
71 Beiträge
 
#18

AW: Autovervollständigen geht manchmal nicht

  Alt 5. Jun 2018, 15:32
Worum es mir geht ist eher so ein Dialog:

Ich: "Hey Chef wir sollte auf "with" verzichten."
Chef: "Warum das denn?"
Ich: "Weil das früher in TRect Probleme gab."
Chef: "Wir haben Delghi 10.2 im Einsatz. Was interessieren mich Probleme von Gestern?"

Gibt es aktuelle Beispiel oder sollte ich das Gespräch von ober erst gar nicht anfangen?
Das ganze ist, wie du richtig erkannt hast, ein philosophische Diskussion.
Man sollte die Nachteile kennen und die gegen die Vorteile abwägen, das gilt aber eigentlich für so ziemlich alles.

Ich persönliche Verwende with nur wenn die Lesbarkeit dadurch merklich erhöht wird. Beispielsweise für eigene Konfigurationsobjekte, da kommt niemand in die Quere.

Das mit den Debuggen stimmt und das sollte man bedenken, jedoch muss ich aber sagen, wann genau funktioniert das Debuggen überhaupt?
Meist sehe ich nichtssagende Speicheradressen oder "Ausdruck lässt sich nicht auswerten" oder mal lässt er sich auswerten aber dann nicht Überwachen. Möchte man komplexere Objekte zur Laufzeit durchdringen hat man schnell 10 weitere Fenster offen, dank fehlender Autovervollständigung muss man auch immer hin und her springen. Am ende wird die kritische Stelle einfach extra für das Debuggen präpariert...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:08 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz