Оптимизация специфичных функций
От: Anthony.K.  
Дата: 11.05.06 19:37
Оценка:
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, но и для структур без каких-либо перегруженных операторов



установил это я только из тестов.

как можно отыскать все такие места без гадания?
как посмотреть низкоуровневый код, получившийся из С++?

Заранее большое спасибо!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.