/O1, /O2 (Réduire la taille, augmenter la vitesse)
Mise à jour : novembre 2007
Sélectionne un jeu prédéfini d'options qui affectent la taille et la vitesse des fichiers.
/O1
/O2
Notes
Le tableau suivant décrit /O1 et /O2.
Option |
Équivalent à |
Commentaire |
---|---|---|
/O1 (Réduire la taille) |
/Og/Os/Oy/Ob2/Gs/GF/Gy |
Crée le code le plus compact possible dans la majorité des cas. |
/O2 (Augmenter la vitesse) |
/Og/Oi/Ot/Oy/Ob2/Gs/GF/Gy |
Crée le code le plus rapide possible dans la majorité des cas. (paramètre par défaut pour les versions release) |
/O1 et /O2 activent également l'optimisation des valeurs de retour nommées, qui élimine le constructeur de copie et le destructeur d'une valeur de retour basée sur la pile. Prenons l'exemple suivant. La fonction Test ne crée pas le constructeur de copie ou le destructeur. Ajoutez des instructions de sortie au constructeur, au destructeur et au constructeur de copie afin de voir l'effet de l'optimisation des valeurs de retour nommées lors de l'exécution du programme. Pour plus d'informations sur l'optimisation de la valeur de retour nommée dans Visual C++, consultez https://go.microsoft.com/fwlink?linkid.
// O1_O2_NRVO.cpp
// compile with: /O1
struct A {
A() {}
~A() {}
A(const A& aa) {}
};
A Test() {
A a;
return a;
}
int main() {
A aa;
aa = Test();
}
Spécifique x86
Ces options impliquent l'utilisation de l'option /Oy (Omission du pointeur frame).
FIN Spécifique x86
Pour définir cette option du compilateur dans l'environnement de développement Visual Studio
Ouvrez la boîte de dialogue Pages de propriété du projet. Pour plus d'informations, consultez Comment : ouvrir les pages de propriétés d'un projet.
Cliquez sur le dossier C/C++.
Cliquez sur la page de propriétés Optimisation.
Modifiez la propriété Optimisation.
Pour définir cette option du compilateur par programme
- Consultez Optimization.
Voir aussi
Référence
/O (Optimiser le code), options