Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   TList<> Initialisierung bei Deklaration möglich? (https://www.delphipraxis.net/188625-tlist-initialisierung-bei-deklaration-moeglich.html)

Alter Mann 22. Mär 2016 15:26

TList<> Initialisierung bei Deklaration möglich?
 
Hallo,

ich wollte ein TList<> gleich bei der Deklaration Werte mitgeben, doch leider mault der Compiler(XE8):
Code:
type
  TSomeInfo = record
    Character : Integer;
    Resource : String;
  end;
 
var
  TSomeList : TList<TSomeInfo> = (($0E00A, 'IDB_0E00A'), ($0E00B, 'IDB_0E00B'));
Geht es so grundsätzlich nicht?

DeddyH 22. Mär 2016 15:28

AW: TList<> Initialisierung bei Deklaration möglich?
 
Initialisieren ginge höchstens mit nil. TList (auch die generische) ist ja eine Klasse und kein statisches Array.

Alter Mann 22. Mär 2016 16:44

AW: TList<> Initialisierung bei Deklaration möglich?
 
Danke.

>statisches Array

Wie ginge das?

DeddyH 22. Mär 2016 17:40

AW: TList<> Initialisierung bei Deklaration möglich?
 
Delphi-Quellcode:
type
  TSomeInfo = record
    Character : Integer;
    Resource : String;
  end;

var
  TSomeInfoArray: array[0..1] of TSomeInfo = ((Character: $0E00A; Resource: 'IDB_0E00A'), (Character: $0E00B; Resource: 'IDB_0E00B'));
Ungetestet.

himitsu 22. Mär 2016 17:52

AW: TList<> Initialisierung bei Deklaration möglich?
 
Und soll es unbedingt eine Liste sein, dann
Delphi-Quellcode:
const
  SomeInfoArray: array[0..1] of TSomeInfo = ((Character: $0E00A; Resource: 'IDB_0E00A'), (Character: $0E00B; Resource: 'IDB_0E00B'));

SomeList := TSomeList<TSomeInfo>.Create;
SomeList.AddRange(SomeInfoArray);

Alter Mann 23. Mär 2016 07:00

AW: TList<> Initialisierung bei Deklaration möglich?
 
Danke:thumb:


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