Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: dynamischer Speicher füllen

  Alt 19. Mai 2005, 15:42
Hallo Porter10,

manchmal dauert es etwas länger. Wenn PRGB_TYPE ein Pointer auf TRGB_TYPE ist, dann ist Palette ein Zeigerfeld. Du forderst den gesamten für die Paletten benötigten Speicher mit einem AllocMem() an. Kann man machen, ist auch irgendwo ökonomisch, aber dann musst du trotzdem die einzelnen Pointer initialisieren. Oder du forderst den Speicher für jede Palette einzeln an.

Delphi-Quellcode:

var
  i: integer;
  p: PRGB_TYPE;
begin
  // Einzelanforderung
  for i := 0 to MAX_PIC - 1 do
    New(Palette[i]);

  // Blockanforderung
  p := AllocMem(...);
  for i := 0 to MAX_PIC - 1 do begin
    Palette[i] := p;
    Inc(p);
  end;
end;
Grüße vom marabu
  Mit Zitat antworten Zitat