Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > C/C++: Общие вопросы > (x ? thinLess:0.0f) |
Автор: Rickert 4.5.2008, 05:10 | ||||
Конструкция типа (x ? thinLess:0.0f) - во что она преобразуется? Допустим у меня такой код:
Что будет быстрее он или:
|
Автор: t_gran 4.5.2008, 06:17 | ||||||
GCC при оптимизации 2 (-02) генерирует один и тот же код
Но если без оптимизации, то сам посмотри, что добавляется ещё одна метка. ![]() 1-ый вариант
2-ой вариант
Добавлено через 4 минуты и 12 секунд Естественно это сильно от компилятора зависит ![]() |
Автор: JackYF 4.5.2008, 12:04 |
Логично, что всё, что не зависит от переменной цикла, лучше выносить за пределы этого самого цикла. |
Автор: Rickert 4.5.2008, 20:10 |
Подожду ещё мнений. Работаю на VS. Спасибо! |
Автор: bsa 5.5.2008, 11:20 |
Rickert, а чего их ждать? есть понятия оптимизация и пессимизация. И если оптимизация вредна только преждевременная, то пессимизация, на мой взгляд, вредна любая необоснованная. У тебя в первом примере именно пессимизация кода. Хорошо, если компилятор умный и может исправить твой косяк, но если это не так? Да и читабельность кода тот подход только понизил, на мой взгляд. |
Автор: mes 5.5.2008, 19:20 |
![]() Но я заметил странное явление - о пессимизации говорят редко. Всегда пугают лишь преждевременной оптимизацией, узнав о вреде которой люди начинают специально писать пессимизировано. Но на самом деле в коде надо избегать не пессимизацию и оптимизацию, а неясность и двусмысленность кода. А если быть точнее, то надо просто стараться выразиться ясней и понятней , и тогда не придется ничего избегать. )) |
Автор: bsa 5.5.2008, 22:28 | ||
Преждевременная оптимизация лежит на повержности. И руки тянутся ее сделать, особенно, у программистов, которые имеют небольшой опыт. С пессимизацией сложнее. Думаю, на нее напарываются только новички или "программисты", которые пишут не думая о том, что они пишут. |
Автор: Rickert 6.5.2008, 07:00 |
Да мне пофиг на то, как какому будет читать мой код, у меня другой вопрос: что работает быстрее? Судя по дизасму одинаково. |
Автор: vinter 6.5.2008, 08:35 |
очень плохо, если не изменишь свое мнение то врядли работу себе нормальную найдешь... ясен пень одинаково, ты приведи пример еще поэлементарней, для чего компиляторы улучшают? чтобы оптимизировали лучше ![]() |
Автор: bsa 6.5.2008, 10:43 | ||
Почитай умные книжки. Только что, ты сказал полную противоположность тому, что есть на самом деле. Ты не только выразил неуважение к другим программистам, но и к себе в первую очередь, так как этот код ты будешь читать сам через пол года с воплями: "Кто так пишет?!?". |
Автор: mes 6.5.2008, 11:13 |
я так понял, что это высказывание относится к фразе Она НЕ означает, что надо писать программу так чтоб понял стороний наблюдатель. Программированние это творческий процесс передачи своей мысли компьютеру. И от того насколько граммотно ты выразишь ее (мысль), настолько хорошо будет соответсвовать работа программы твоему представлению и соответственно настолько сильно будет твое удовлетворение |