exam v1 Flashcards
Optimisation de boucle
for (int i = 0; i < vec.size(); i++) {
// Traitement avec vec[i]
}
int taille = vec.size(); // Évite les appels répétés à size()
for (int i = 0; i < taille; i++) {
// Traitement avec vec[i]
}
Utilisation de références
void traiterDonnees(vector donnees) {
// Traitement
}
void traiterDonnees(const vector& donnees) {
// Traitement
}
Pré-allocation de mémoire
vector resultat;
for (int i = 0; i < 1000; i++) {
resultat.push_back(i * 2);
}
vector resultat;
resultat.reserve(1000); // Pré-alloue la mémoire
for (int i = 0; i < 1000; i++) {
resultat.push_back(i * 2);
}
Utilisation d’opérateurs efficaces
int x = 5;
x = x * 2;
int x = 5;
x «= 1; // Utilisation du décalage de bits pour multiplier par 2
Éviter les conversions inutiles
double somme = 0;
for (int i = 0; i < 100; i++) {
somme += i;
}
int somme = 0;
for (int i = 0; i < 100; i++) {
somme += i;
}
double resultat = static_cast(somme);