Hej,
robię testy prędkości dodawania i odejmowania elementów róznej wielkości do różnych kontenerów.
Tak przy okazji wyszło mi coś dziwnego. Mianowicie wektor wypełniony 10 elementami typu int zajmuje 20 bajtów. Typ int to przecież 4 bajty więc zdrowy rozsądek podpowiada, że cały wektor powinen zajmować 40 bajtów.
kod
for( int k=0; k<10; k++) {
vector.push_back(k);
}
cout <<" rozmiar: "<<sizeof(vector)<<" ilosc elementow: "<<vector.size()<<endl;
for(int p=0; p<10; p++)
cout << vector[p]<<" - "<<sizeof(vector[p])<<endl;
sprawdziłęm też, że każdy element wektora rzeczywiście ma 4bajty
czym jest to spowodowane? czy wektor robi jakąś konwersje typów?
efekt