menge von mit new belegten speicehr abfragen.



  • meinst du wie er erstellt wird?



  • otze schrieb:

    meinst du wie er erstellt wird?

    Ich kann deiner obigen Erklaerung nicht ganz folgen. Was hat ein Allocator mit
    float am Hut?

    mfg
    v R



  • allokiere mir speicher für 256 floats.



  • otze schrieb:

    allokiere mir speicher für 256 floats.

    Dem Allocator ist es doch egal, ob der Speicher fuer float's, int's oder foo's
    genutzt wird. Der (oder besser _ein_) Allocator (so wie ich ihn mir vorstelle)
    Reserviert freien Speicherplatz und kommt eine Speicheranforderung so handelt
    das der Allocator und gibt entsprechend Speicher zurueck. Ob der Speicher nun
    fuer ein Array von float's gebraucht wird oder fuer ein Array von bar's, ist dem
    Allocator doch egal.

    Aber mal zurueck zum Thema :). Wie viele Elemente dein Array hat, ist dir doch
    bekannt, schliesslich legst du es ja auch an ;).

    mfg
    v R



  • jep, mir ist es bekannt, dem dummen programmierer aber vielleicht nich 😉
    dem muss ich halt ne exception werfen, dass er sich wohl irgendwo verrechnet hat, weil sein array in leeren raum zeigt.



  • float * begin = Allokator.allocat(256);
    float * end = begin + 256;
    

    Wenn du jetzt wissen willst, ob hinter einer gewissen Position noch genügend elemente vorhanden sind, schreibst du:

    if (begin + start_postion + length > end)
       throw out_of_range("Balbla");
    

    BTW, was willst du die ganze Zeit mit deinem End of File? Was hat das ganz mit Dateien zu tun?



  • otze schrieb:

    jep, mir ist es bekannt, dem dummen programmierer aber vielleicht nich 😉
    dem muss ich halt ne exception werfen, dass er sich wohl irgendwo verrechnet hat, weil sein array in leeren raum zeigt.

    Du willst also bei sowas hier:

    char *a = new char[50];
    //fuelle a
    for(int i = 0; i < 100; ++i)
       cout<<a[i];
    

    mitbekommen, sobald er auf a[50] zugreift. Nur wie stellst du dir vor, wie das
    funktionieren soll? Du kannst den Zugriff auf ein normales Array nicht abfangen,
    dafuer braeuchtest du ne Array-Klasse, welche seine Groesse kennt und
    entsprechend reagiert, falls man mit einem Index > ArraySize zugreifen will.

    Wuesste nicht, wie das zu loesen waere.

    mfg
    v R



  • ebend, mit ner array klasse 😉 hab ja schon gesagt, dass ich nu was neues vorhab^^



  • otze schrieb:

    ebend, mit ner array klasse 😉 hab ja schon gesagt, dass ich nu was neues vorhab^^

    Das kommt davon, weil du nie ordentliches Posts machst, sondern immer nur einen Satz oder 2 hinpfefferst - aber nix erklärst.



  • okok.
    aber ich denke, dass folgende bzw ähnliche situation ersichtlich ist:

    das funktioniert so nicht

    ok, dann lass ichd as, und probier was andres


Anmelden zum Antworten