Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Показать сообщение отдельно

ИО Капитана Очевидности


Contributor


Сообщения: 5387
Благодарности: 1105

Профиль | Отправить PM | Цитировать


Цитата Ferum01:
Как вы думаете переменная массива "ap1[i]" медленнее "p1" (обе типа int)? »
Можно посмотреть встроенным в Builder дизассемблером, сколько команд процессора займёт чтение/запись обоих переменных.
p1 - стековая переменная с фиксированным смещением - читается одной командой
ap1 [i] - стековая переменная со смещением, определяемым суммой начала массива (ap1) и значения индекса (i * 4). Однако процессор вполне в состоянии прочитать и это одной командой.

Причём, в "релизном" режиме со включенной оптимизацией компилятор сам определит оптимальную последовательность команд.

P.S.
Цитата Ferum01:
В общем хотелось бы ясности в этом вопросе (эсперементировать не хотлось бы, код очень большой). »
На будущее...
Судя по всему, эти шесть значений описывают какой-то объект, а шесть массивов - массив объектов.
В таких случаях проще объединить их в "структуру", и в этой структуре определить оператор "==" - функцию, которая будет выполнять рассматриваемое условие проверки.

-------
Самое совершенное оружие, которым забиты арсеналы богатых и процветающих наций, может легко уничтожить необразованного, больного, бедного и голодного. Но оно не может уничтожить невежество, болезнь, нищету и голод. (Фидель Кастро)

Почему всех осужденных за измену Родине при Сталине реабилитировали при Горбачёве по отсутствию состава преступления? Потому что при Горбачёве измену Родине перестали считать преступлением.

Это сообщение посчитали полезным следующие участники:

Отправлено: 02:12, 08-10-2009 | #8