/O1, /O2 (Minimizar tamaño, maximizar velocidad)
Selecciona un conjunto predefinido de opciones que afectan al tamaño y a la velocidad de los archivos.
/O1
/O2
Comentarios
En la siguiente tabla se describen las opciones /O1 y /O2.
Opción |
Equivale a |
Comment |
---|---|---|
/O1 (Minimizar tamaño) |
/Og /Os /Oy /Ob2 /Gs /GF /Gy |
Crea el código más pequeño en la mayor parte de los casos. |
/O2 (Maximizar velocidad) |
/Og /Oi /Ot /Oy /Ob2 /Gs /GF /Gy |
Crea el código más rápido en la mayoría de los casos. (configuración predeterminada en las versiones de lanzamiento) |
Las opciones /O1 y /O2 también habilitan la optimización del valor devuelto con nombre, que elimina el constructor y el destructor de copias de un valor devuelto basado en la pila. Observe el siguiente ejemplo. La función Test no creará el constructor o el destructor de copias. Agregue las instrucciones de salida al constructor, a un destructor y el constructor de copias para ver el efecto de optimización del valor devuelto Named al ejecutarlo. Para obtener más información, vea Optimización denominada el valor devuelto en Visual C++ 2005.
// 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();
}
Específico de x86
Estas opciones implican el uso de la opción /Oy (omisión de puntero a marco).
Específico de END x86
Para establecer esta opción del compilador en el entorno de desarrollo de Visual Studio
Abra el cuadro de diálogo Páginas de propiedades del proyecto. Para obtener información detallada, vea Cómo: Abrir páginas de propiedades del proyecto.
Haga clic en la carpeta C/C++.
Haga clic en la página de propiedades Optimización.
Modifique la propiedad Optimización.
Para establecer esta opción del compilador mediante programación
- Vea Optimization.
Vea también
Referencia
/O (Opciones) (Optimizar código)