Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi FixInsight Warnung eliminieren (https://www.delphipraxis.net/189707-fixinsight-warnung-eliminieren.html)

Sherlock 12. Jul 2016 10:19

Delphi-Version: 10 Seattle

FixInsight Warnung eliminieren
 
Ich hab da ein kleines Codestück, das mir FixInsight bemängelt und ich steh grad aufm Schlauch, wie ich das Lösen soll. Ich hab ein TTabControl mit einem TTabItem, dem ich zur Laufzeit eventuell noch weitere TTabItems hinzufügen muss. Das erledigt folgendes Blöcklein:
Delphi-Quellcode:
  if numDevs > 1 then
  begin
    for i := 2 to numDevs do // Ein Tab haben wir bereits...wir fügen nur die zusätzlichen hinzu
    begin
      DeviceTab.Add(nil);
    end;
  end;
Jetzt bemerkt FixInsight ganz richtig, daß der Wert von i nicht verwendet wird...aber wie soll ich das sonst machen? :gruebel:
Da muss es etwas einfaches geben, aber ich komm grad nicht drauf.

Sherlock

Der schöne Günther 12. Jul 2016 10:37

AW: FixInsight Warnung eliminieren
 
Delphi-Quellcode:
repeat
   DeviceTab.Add(nil);
until (DeviceTab.Count = numDevs);
:gruebel:

Sherlock 12. Jul 2016 10:42

AW: FixInsight Warnung eliminieren
 
<Homer>D'oh!</Homer>

Sherlock

Uwe Raabe 12. Jul 2016 10:47

AW: FixInsight Warnung eliminieren
 
Wenn du eine while-Schleife nimmst, sparst du dir sogar noch die if-Abfrage.

Delphi-Quellcode:
while (DeviceTab.Count < numDevs) do
  DeviceTab.Add(nil);

Sherlock 12. Jul 2016 10:50

AW: FixInsight Warnung eliminieren
 
:oops:

Betriebsblindheit ist immer noch eine akzeptable Entschuldigung, oder? Ich würde sogar noch eine Prise Urlaubsreife hinzugeben.

Sherlock

himitsu 12. Jul 2016 10:54

AW: FixInsight Warnung eliminieren
 
Ein blindes
Delphi-Quellcode:
if i=0 then ;
hilft immer und der Compiler opimiert sowas auch nie weg. :stupid::angle2:

Sherlock 12. Jul 2016 10:59

AW: FixInsight Warnung eliminieren
 
Das wär mir dann doch zu billig gewesen :stupid:

Sherlock

himitsu 12. Jul 2016 11:37

AW: FixInsight Warnung eliminieren
 
Sowas ist manchmal zum Debuggen ganz nett, da wo der Debugger meint die Variable sei entfernt, weil der die nur kurz in den Registern hatte und sie nicht auf dem Stack liegen.


Und das IF war doch auch so schon überflüssig,
denn
Delphi-Quellcode:
for i := 2 to i do
mit i < 2 macht ja nichts, außer bei downto.

Sherlock 12. Jul 2016 11:41

AW: FixInsight Warnung eliminieren
 
...und da ist die dritte Variante, um meine Schande komplett zu machen. :pale:

Wenn sich das jetzt noch über mehrere Seiten ausdehnt, werde ich in Betracht ziehen, eine Weile keine Fragen mehr zu stellen. ;)

Sherlock

himitsu 12. Jul 2016 11:48

AW: FixInsight Warnung eliminieren
 
Das 5 Leerzeichen in Zeile 438 war auch überflüssig.
Tschuldschung, aber wünsch dennoch einen schönen Tag. :cheer:

Aber noch sind wir ja noch auf Seite 1. :duck:


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:20 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