170 похожих чатов

Int main() { int arr[] = {1, 2, 3,

4, 5};
for (size_t i = 0; i < std::size(arr); ++i) {
std::cout << arr[i] << (i != std::size(arr) - 1 ? ", " : "");
}
return 0;
}

21 ответов

24 просмотра

Фи, лишнее условие на каждую итерацию

На i с нулем удобнее сравнивать

Vladimir- Автор вопроса
Liber Azerate
Фи, лишнее условие на каждую итерацию

Надеюсь дожить до момента, когда при измерении выяснится, что программа тормозит именно из-за этого

Vladimir- Автор вопроса
Vladimir- Автор вопроса
Liber Azerate
Фи, лишнее условие на каждую итерацию

Я кстати не уверен а нету ли где-то в глубине ваших оберток точно такого же условия

Vladimir
Не очень понял тебя

i != std::size(arr) - 1 - более громоздко нежели (i ? "," : "")

Vladimir- Автор вопроса
Anatoly Shirokov
i != std::size(arr) - 1 - более громоздко нежели (...

Не понял, я же таким образом хочу найти последний элемент, а не первый, как мне поможет сравнение с 0?

Vladimir
Не понял, я же таким образом хочу найти последний ...

for(...) { если не первый элемент, вывести запятую вывести элемент }

Anatoly Shirokov
for(...) { если не первый элемент, вывести за...

Так а зачем? Тогда неправильно отображаться будет

Vladimir- Автор вопроса
Anatoly Shirokov
for(...) { если не первый элемент, вывести за...

Суть в том, чтобы для последнего элемента не вывести ", " в конце

Liber Azerate
Так а зачем? Тогда неправильно отображаться будет

что за хрень, ребят? for(size_t i = 0; i < n; ++i) { if(i) std::cout << ", "; std::cout << a[i]; }

Vladimir- Автор вопроса
Anatoly Shirokov
что за хрень, ребят? for(size_t i = 0; i < n; ++i)...

Или можно вообще без ифов, чтобы в них точно никто не запутался: std::string delimiter; for(auto& e: a) { std::cout << delimiter << e; delimiter = ", "; }

Ofee Oficsu
Или можно вообще без ифов, чтобы в них точно никто...

И приз на самое элегантное решение выигрывает Офи

Liber Azerate
И приз на самое элегантное решение выигрывает Офи

Вообще, оно не моё, точно у кого-то видел, вероятнее всего у @h4cktill

Ofee Oficsu
Или можно вообще без ифов, чтобы в них точно никто...

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

anton
а оно cоптимизируется, или будет каждый раз присва...

Будет, конечно. Другое дело, что без бенчмарков я не возьмусь угадывать, что будет быстрее – сравнить или присвоить

Vladimir- Автор вопроса

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Гайс, вопрос для разносторонее развитых: читаю стрим с юарта, нада выделять с него фреймы с определенной структурой, если ли чо готовое, или долбаться с ринг буффером? нада у...
Vitaly
9
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
длина пакета фиксированная, или меняется?
Okhsunrog
7
Карта сайта