Rug*_*rra 1 c++ optimization reference
例如,假设我需要创建复杂的数学公式
double f(double array1[100], double array2[100])
{
double z = array1[21] * array2[3] + array[10];
double q = array1[21] * array1[30] / array1[10];
return array1[1] * z * q;
}
Run Code Online (Sandbox Code Playgroud)
或者更复杂.我的解决方案是创建中间变量,如:
double f(double array1[100], double array2[100])
{
double energy = array1[21];
double mass = array2[3];
double speed = array[10];
double z = energy * mass + speed;
double q = energy * array[30] / speed;
return array1[1] * z * q;
}
Run Code Online (Sandbox Code Playgroud)
问题是我并不真的需要这些新变量,我不想浪费内存或增加时间来调用函数.所以现在我正在使用const每个中间变量,所以编译器可能更容易优化它.但也许使用引用更好?