![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() |
ViGOur |
![]()
Сообщение
#1
|
![]() Мастер ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модератор Сообщений: 3296 Регистрация: 9.10.2007 Из: Москва Пользователь №: 4 Спасибо сказали: 231 раз(а) Репутация: ![]() ![]() ![]() |
Сколько кода пересмотрел, код от кода разумеется различается, но заметил закономерность, используются в основном или ссылки или указатели, использование того и другого встречается редко.
1 вариант:
2 вариант:
3 вариант:
+ 1 и 2 вариант: экономия времени и памяти на копировании, в отличии от 3 варианта. - 3 вариант значение копируется во временную переменную и занимает дополнительную память p.s. затеял эту тему из-за интереса, сколько + и - наберем... ![]() |
|
|
![]() |
Andrew Selivanov |
![]()
Сообщение
#2
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 249 Регистрация: 9.10.2007 Из: Москва Пользователь №: 3 Спасибо сказали: 15 раз(а) Репутация: ![]() ![]() ![]() |
Сколько кода пересмотрел, код от кода разумеется различается, но заметил закономерность, используются в основном или ссылки или указатели, использование того и другого встречается редко. 1 вариант:
2 вариант:
3 вариант:
+ 1 и 2 вариант: экономия времени и памяти на копировании, в отличии от 3 варианта. - 3 вариант значение копируется во временную переменную и занимает дополнительную память p.s. затеял эту тему из-за интереса, сколько + и - наберем... ![]() С точки зрения оптимизации в компиляторе (например -O2) для конкретного случая int-a и на разных компиляторах результаты будут разными. Я делаю как удобнее в конкретном случае. Можно ради интереса собрать эти три функции для MSVC 7,8 и GCC 3.x, 4.x (x386) и посмотреть, какой код сгенерится. А вообще оптимизация в ее глобальном понимании - зло ![]() |
|
|
![]() ![]() ![]() |
![]() |
|
Текстовая версия | Сейчас: 23.6.2025, 9:42 |