Einzelnen Beitrag anzeigen

r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#4

Re: C++: Zeiger und Speicher reservieren

  Alt 14. Okt 2006, 20:38
Zitat von PAX:
das heißt, wenn ich die freigabe vergesse und das programm irgendwann beendet wird, dann "bleibt" diese speicherlücke bis zum computerneustart?
So ungefähr jo. Kann sein, dass Windows da irgendwann nochmal aufräumt, aber davon sollte man nicht ausgehen...

Zitat:
achso, und falls der arbeitsspeicher nicht ausreichen sollte, wird auf den virtuellen speicher (auslagerungsdatei) zurückgegriffen, gell? und falls dieser nicht ausreicht, ... ja dann is es nich meine schuld!
Jo.

Zitat:
und nochmal zum ansistring: wenn ich solch einem bezeichner nun eine 23 byte-zeichenkette zuweise, wie viel byte wird dann verbraucht? 23 oder dann doch mehr?
23 Byte Daten + 4 Byte Pointer + ? Byte Referenzzählung

Zitat:
der grund, warum ich solche fragen stelle ist, dass ich wissen möchte, was genau vorgeht und wie stark ich mein programm somit verhunze, wenn ich mehrere ansistrings und unsigned long long-typen deklariere(n muss)...
AnsiStrings(bzw. Strings in Delphi) kannst du im Prinzip so viele nutzen, wie du lustig bist. Mach dir da gar keine Gedanken. Die Zeiten, wo man wirklich auf jedes Byte RAM aufpassen musste sind (zumindest für die Windows-Entwicklung) nun endgültig vorbei... Bevor du darüber nachdenkst ob du hier Speicher sparen kannst, hast du die komplette VCL umgeschrieben...
Auch bei unsigned long long(~ Int64 in Delphi) brauchst du dir da keine Gedanken machen. Wobei man die sowieso extrem selten braucht...

Der Einzige Grund warum man sich darüber Gedanken machen kann, is Geschwindigkeit. (Ansi)Strings sind etwas langsamer als PChar bzw. char *. Wenn du ne Funktion hast, die n paar Tausend Mal aufgerufen wird, kannst du dir überlegen, ob du das nicht schneller hinkriegst, ansonsten brauchst du dir da auch keine Gedanken machen...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat