Declaración de variables locales dentro de una optimización de bucle "virtual"
-
30-10-2019 - |
Pregunta
Esta vez, no pude encontrar lo que estoy buscando (no sé si no estoy buscando las cosas correctas ...) pero aquí está:
En C ++, imagina que tienes una función Bar()
Eso se llama una vez cada ciclo ... así:
class Foo {
public:
void Bar() {
double my_array[3];
// fills the array based on some calculations
double my_array1[3];
// fills the array based on some calculations
double my_array2[3];
// fills the array based on some calculations
_member_of_class = my_array + my_array1 + my_array2; //+ overloaded
}
private:
float _member_of_class[3];
}
int main(int argc, char** argv) {
Foo foo;
while(/*program running*/) {
foo.Bar();
//LOTS of code here
}
return 0;
}
Ahora, los my_arrays son matrices temporales, no son importantes ser miembros de datos, solo que se usan para llenar al miembro de la clase ... obviamente, la sobrecarga de llamar a esa función no es necesaria ... ¿Hay una manera (bueno, estoy tratando de ¿Evite ponerlos como miembros de la clase) de decirle al compilador que "guarde el espacio de asignación" o algo para que esté menos gastos generales? ¿Const daría algún consejo al compilador? No estoy seguro de que estoy siendo claro ...
¡Gracias de todos modos!
No hay solución correcta