AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Größe bei dyn. Arrays automatisch?

Ein Thema von jensen82 · begonnen am 27. Mai 2013 · letzter Beitrag vom 29. Mai 2013
 
jensen82

Registriert seit: 4. Mai 2013
4 Beiträge
 
#1

Größe bei dyn. Arrays automatisch?

  Alt 27. Mai 2013, 14:52
Delphi-Version: 2010
Hallo!

Ich habe schon einige Jahre Programmiererfahrung in anderen Sprachen und bin vor kurzem zu Delphi "gewechselt". Klar...entweder man kann programmieren oder eben nicht.
Mir ist allerdings etwas aufgefallen:

Ich lese Hardware-Infos via WQL und WMI aus und bekomme via OLE und Wbem-Script Daten zurück (Variant). Damit wird ein Record gefüllt.
Hier werden u.a "array UINT16" zurückgegeben. Im Record habe ich daher data : array of Integer; stehen. Das Tolle ist...es geht, ohne SetLength() zu verwenden.

Meine Frage ist: Warum macht Delphi das autom. und warum wird immer empfohlen via SetLength die Größe anzugeben?

Ist die Variante sicher? Also ohne SetLength ?

Hier mal ein Code-Ausschnitt:

Delphi-Quellcode:
TDiskInfo = record
    Availability: Integer; // Uint16
    BytesPerSector: Integer; // Uint32
    Capabilities: array of Integer; // Array of Uint16

// Hier jetzt die Zuweisung:
if not VarIsNull(FWbemObject.Capabilities) then
        begin
          disk.Capabilities := FWbemObject.Capabilities;
end

// klappt ohne Probleme
Ich würde mich über Konstruktives freuen

Und bitte nicht lachen...der Wechsel zu Delphi ist noch nciht ganz abgeschlossen.

Danke sehr!
  Mit Zitat antworten Zitat
 

 

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 20:31 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