duplicatas possibles:
Using arrays or std::vectors in C++, what's the performance gap?
std::vector is so much slower than plain arrays?L'accès à un tableau est-il plus rapide que l'accès à un vecteur?
mémoire est le vecteur de 1000 éléments array [] est un tableau d'entiers de 1000 éléments
for (iteration = 0; iteration < numiterations; iteration++) {
for (j = 1; j < numints; j++) {
memory[j] += memory[j - 1];
//array[j] += array[j - 1];
}
}
Si je compare le temps de la boucle for après avoir exécuté 100 itérations , le temps requis pour accéder est très petit comparé à celui du vecteur
pourquoi est-ce le cas? parce que je pensais que les deux prend constante et presque en même temps ..
Pouvez-nous nous en dire plus sur la plate-forme sur laquelle vous avez testé ce produit? Compilateur, optimisation/type de construction, ce genre de chose? Souvent, 'vecteur' est plus lent dans les versions de débogage, mais la même vitesse qu'un tableau brut dans les versions de construction ... – Doug
Voir [ Utilisation de tableaux ou de std :: vectors en C++, quel est l'écart de performance? ] (http://stackoverflow.com/questions/381621/using-arrays-or-stdvectors-in-c-whats-the-performance-gap). La réponse acceptée montre l'assemblage généré avec essentiellement aucune différence entre un vecteur et un tableau, avec g ++ et -O3. –
Iam utilisant la version 3.3.2 de gcc – ajayreddy