VC 2005.
Мне необходимо оптимизировать набор функций.
Все эти функции выглядят примерно так:
void Function(const CBigObject &theObject)
{
// вытаскивание кучи переменных из объекта
int i1 = theObject.Get_i1();
int i2 = theObject.Get_i2();
int i3 = theObject.Get_i3();
...
// активное использование переменных i1, i2, i3..
}
почемуто вдруг вытаскивание переменных из метода вида
inline int CBigObject::Get_i1() { return m_i1; }
работает быстрее, чем если бы я использовал метод вида
inline void CBigObject::Get_all_i(int &i1, int &i2, int &i3....) { i1 = m_i1; i2 = m_i2; ...}
не только для int, но и для структур без каких-либо перегруженных операторов
установил это я только из тестов.
как можно отыскать все такие места без гадания?
как посмотреть низкоуровневый код, получившийся из С++?