sizeof(int) 4 bytes, im Taskmanager ~17 bytes



  • theta schrieb:

    Was denkst Du mit sizeof(std::vector<int>) zu messen?
    Simon

    Da er den std::vector<int> nicht füllt, sollte das bereits die gesamte Grösse sein.

    muuh schrieb:

    Den Speicher den myVec belegt.

    Vorsicht, sizeof gibt nur nur die Grösse des Objekts (zur Compilezeit) Bescheid und sagt nichts über den tatsächlichen Speicherverbrauch aus.



  • **@muuh:**Aus reiner Neugier: Welchen Wert vermutest Du für s?

    struct Object
    {
    	Object() : value(0) {}
    	long* value;
    };
    
    int main()
    {
    	Object object;
    	object.value = new long[256];
    
    	size_t s = sizeof(object);
    
    	delete[] object.value;	
    }
    

    Simon



  • muuh, was sagt capacity() zu den grossen Vectoren aus? Sind beide gleich?



  • @ theta: Kein Schimmer, der Pointer wird wohl 4 sein. Ich weiss nicht was Object() : value(0) {} darstellt, daher tipp ich einfach mal auf 4.

    @ Nexus: 1049869 wird in beiden Fällen für field.capacity() angezeigt.


Anmelden zum Antworten