Переключение на Главную Страницу Страницы: 1 [2]  ОтправитьПечать
Горячая тема (более 10 ответов) Как упростить код С++ и сделать более понятным? (число прочтений - 9781 )
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #15 - 28. Февраля 2008 :: 06:59
Печать  
artbear писал(а) 28. Февраля 2008 :: 06:56:
Поделись еще - каким образом наблюдал?
Смотрел скомпилированный код ассемблера или еще как?

Включил генерацию ASM-файла. У IC это тоже есть Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #16 - 28. Февраля 2008 :: 07:08
Печать  
Uzhast писал(а) 28. Февраля 2008 :: 06:47:
Ну и, когда я говорю про инлайн, я имею в виду инлайн тех функций, что нужно адаптировать. Код же самого функтора, который порождает boost::bind полностью проинлайнился Улыбка Т.е. никаких левых вызовов, кроме вызова привязанной функции, нет.

Думаю, даже, если в VC6 не будет полного инлайна Печаль, в этом нет ничего страшного, один косвенный вызов не страшен.
Зато код будет очень красивым.

ЗЫ все равно давно хотел с bind потренироваться Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #17 - 28. Февраля 2008 :: 07:13
Печать  
artbear писал(а) 28. Февраля 2008 :: 07:08:
Думаю, даже, если в VC6 не будет полного инлайна Печаль, в этом нет ничего страшного, один косвенный вызов не страшен.
Зато код будет очень красивым.

Хотя точный диагноз потерь производительности даст, конечно, только профайлер.
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
spock
1c++ developer
1c++ moderator
Отсутствует



Сообщений: 822
Местоположение: Новосибирск
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #18 - 28. Февраля 2008 :: 13:48
Печать  
Uzhast писал(а) 28. Февраля 2008 :: 06:38:
Про bind здесь можно почитать: http://rsdn.ru/article/cpp/boost.bind.xml

хорошая статья, спасибо
  
Наверх
ICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #19 - 28. Февраля 2008 :: 15:48
Печать  
artbear писал(а) 27. Февраля 2008 :: 14:39:
ОФФ. Попробуй еще найти "Рефакторинг" Мартина Фаулера
или его же "Шаблоны корпоративных приложений" - точное название не помню, но все указанные слова в нем есть Улыбка

нашел.
http://www.proklondike.com/contentview.php?content=258
  
Наверх
IP записан
 
kms
1c++ power user
1c++ moderator
Отсутствует


я хочу, чтоб сюда проложили
дорогу оттуда...

Сообщений: 4632
Зарегистрирован: 19. Мая 2006
Re: Как упростить код С++ и сделать более понятным
Ответ #20 - 29. Февраля 2008 :: 09:32
Печать  
spock писал(а) 28. Февраля 2008 :: 13:48:
Uzhast писал(а) 28. Февраля 2008 :: 06:38:
Про bind здесь можно почитать: http://rsdn.ru/article/cpp/boost.bind.xml

хорошая статья, спасибо

Статья хорошая, сортировка плохая.

Uzhast

Если еще че стоящего по Boost найдешь, делись, интересно.

Отсюда можно быстро в цифрах оценить разницу между чистым функтором и адаптером (и не только):
http://rsdn.ru/article/devtools/CppPerformance.xml

А это здесь не в тему, но создавать новую тему в лом:
http://rsdn.ru/Forum/Info/FAQ.cpp.stl.speed.aspx

Что Павел за человек? Как это читать? Где версии нах?
И все равно интересно, перевел для десятки в xls.
  

10000.xls ( 22 KB | Загрузки )

De quelle planète es-tu?
Наверх
 
IP записан
 
Uzhast
1c++ power user
Отсутствует



Сообщений: 1341
Зарегистрирован: 30. Августа 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #21 - 01. Марта 2008 :: 10:29
Печать  
kms писал(а) 29. Февраля 2008 :: 09:32:
Отсюда можно быстро в цифрах оценить разницу между чистым функтором и адаптером (и не только):
http://rsdn.ru/article/devtools/CppPerformance.xml

Эту статью в комментах покритиковали довольно справедливо. (Или не в комментах?... В общем, была ветка в rsdn.cpp) Но все равно довольно интересно. Улыбка

kms писал(а) 29. Февраля 2008 :: 09:32:
А это здесь не в тему, но создавать новую тему в лом:
http://rsdn.ru/Forum/Info/FAQ.cpp.stl.speed.aspx

Что Павел за человек? Как это читать? Где версии нах?
И все равно интересно, перевел для десятки в xls.

Ну, это сначала было не статьей, а просто постом в форуме, где он просто показал результаты тестов с последними на тот момент версиями Улыбка

А это ты удачно в Excel все завернул - наглядно получилось Улыбка Забавно, что STLport почти всегда впереди. Правда, у него свой аллокатор вроде бы - за счет этого он и выигрывает. Поговаривают, что если к dinkum присобачить более шустрый аллокатор, то он тоже не таким уж черепашистым становится Улыбка
  
Наверх
 
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #22 - 12. Марта 2008 :: 13:49
Печать  
trdm писал(а) 28. Февраля 2008 :: 15:48:
artbear писал(а) 27. Февраля 2008 :: 14:39:
ОФФ. Попробуй еще найти "Рефакторинг" Мартина Фаулера
или его же "Шаблоны корпоративных приложений" - точное название не помню, но все указанные слова в нем есть Улыбка

нашел.
http://www.proklondike.com/contentview.php?content=258

Вот точное название
Мартин Фаулер - Архитектура корпоративных программных приложений
Если найдешь в электронном виде, пиши. Самому нужна Улыбка
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #23 - 12. Марта 2008 :: 14:11
Печать  
artbear писал(а) 12. Марта 2008 :: 13:49:
Вот точное название
Мартин Фаулер - Архитектура корпоративных программных приложений
Если найдешь в электронном виде, пиши. Самому нужна Улыбка

тынц?
  
Наверх
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Как упростить код С++ и сделать более понятным
Ответ #24 - 13. Марта 2008 :: 22:17
Печать  
trdm писал(а) 12. Марта 2008 :: 14:11:
artbear писал(а) 12. Марта 2008 :: 13:49:
Вот точное название
Мартин Фаулер - Архитектура корпоративных программных приложений
Если найдешь в электронном виде, пиши. Самому нужна Улыбка

тынц?

не понравилась книжка.... (
  
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 
ОтправитьПечать