AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi su. nach speichersparender Array-Variante
Thema durchsuchen
Ansicht
Themen-Optionen

su. nach speichersparender Array-Variante

Ein Thema von EccoBravo · begonnen am 15. Okt 2009 · letzter Beitrag vom 15. Okt 2009
 
Benutzerbild von EccoBravo
EccoBravo

Registriert seit: 19. Okt 2004
Ort: Neuruppin
524 Beiträge
 
Delphi 2007 Architect
 
#1

su. nach speichersparender Array-Variante

  Alt 15. Okt 2009, 11:57
Hallo,

Bin bei meiner Programmierung auf der Suche
nach einer speicherplatzsparenden Array-Variante.
Mein Array im untenstehendes Code
führt bei einer Arraydimension [1..512, 1..512, 1..100]
zumZulaufen desd Arbeitsspeichers.
Error:= 'zu wenig Arbeitsspeicher';

Codebeispiel:

Delphi-Quellcode:
  
TEB_Pix = class(TObject)
    private
        FPix: integer;
        procedure SetPix(const Value: integer);
        function getPix: integer;
    protected
    public
    published
        property Pix: integer read getPix write SetPix;
    end;

    TEB_Grauwert = class(TObject)
    private
        FGrauwert: word;
        procedure SetGrauwert(const Value: word);
        function GetGrauwert: word;
    protected
    public
    published
        property Grauwert: word read GetGrauwert write SetGrauwert;
    end;

    TEB_PixMatrix = array of array of TEB_Pix; // 512 x 512
    TEB_GrauMatrix = array of array of array of TEB_Grauwert; // 512 x 512 x 100
    TEB_Buffer = array of Byte;

    { TEB_Bild }
    TEB_Bild = class(TObject)
    private
        ...
        FPixMatrix: TEB_PixMatrix;
        FGrauMatrix: TEB_GrauMatrix;
        ...
        ...
        function GetGrauMatrix(Xind, Yind, Zind: integer): TEB_Grauwert;
        function GetPixMatrix(Xind, Yind: integer): TEB_Pix;
        procedure SetGrauMatrix(Xind, Yind, Zind: integer;
            const Value: TEB_Grauwert);
        procedure SetPixMatrix(Xind, Yind: integer; const Value: TEB_Pix);
    protected
    public
        property PixMatrix[Xind, Yind: integer]: TEB_Pix read GetPixMatrix write
        SetPixMatrix;
        property GrauMatrix[Xind, Yind, Zind: integer]: TEB_Grauwert read
        GetGrauMatrix write
            SetGrauMatrix;
        ...
    published
        ...
    end;

var
    Bild: TEB_Bild;
Hat nicht jemand eine Idee ?!


Danke im Voraus

EB

PS:
WinXP prof
2GB RAM
2GB Page
Wahre Aussage :=
Katzen, die bellen sind keine Kaninchen.

Der Kreisverkehr ist eine spezielle Form der Einbahnstraße
  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 21:24 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz