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

Как думаете, могут быть проблемы с подобным использованием?

37 ответов

22 просмотра

компилятор может все эти `if`ы и `nop`ы выкинуть

Отличный способ говна навернуть. Используй конструкцию if () { } Чтобы не было проблем в будущем В остальном, если не считать замечания выше что выкинуть комплиятор может - все норм

Александр-Гравит Автор вопроса
Leonid Zaliubovskyi
Отличный способ говна навернуть. Используй констру...

хм. могу ошибаться но вроде видел в стандарте возможность использования без скобок

Александр Гравит
хм. могу ошибаться но вроде видел в стандарте возм...

Можно. Но тут такое дело, говно тоже можно есть. Но вот нужно ли. Понадобится исправить или дополнить условие и есть риск что выполнится не все, что должно. Я бы советовал всеже скобки использовать все же.

Александр Гравит
хм. могу ошибаться но вроде видел в стандарте возм...

Если используете без скобок, то лучше пишите в одну строку, чтобы явно показать, что это однострочная конструкция. В случае с двух строчной реадизацией - просто высока вероятность потом на свои же грабли попасть. Плюс, вы же в две строки пишите исходя из того, что хотите место сэкономить, тогда смысл писать в две строки без скоьок, вместо того, чтобы писать в одну, тоже без скобок?

Александр Гравит
хм. могу ошибаться но вроде видел в стандарте возм...

Двустрочная реализация, как что то недоделаное на мой взгляд, скобки убраны, но в одну строчку не пишу, так как не хочется

Александр-Гравит Автор вопроса
linxuil
Если используете без скобок, то лучше пишите в одн...

стараюсь писать в стиле rsdn соглашения

Александр Гравит
стараюсь писать в стиле rsdn соглашения

а надо в стиле здравого смысла. while(cond); { // some code } Как говорится, найди ошибку.

Александр-Гравит Автор вопроса
Wild_Wind
а надо в стиле здравого смысла. while(cond); { // ...

вот в циклах, почему то, не хочется без скобок. а в ифах - считаю вправе ))

Александр Гравит
вот в циклах, почему то, не хочется без скобок. а ...

И в ифах тоже можно нечаянно поставить ; и получить безусловное выполненеие кода, а компилятор и вовсе выпилит if т.к. у него блок пустой.

Александр-Гравит Автор вопроса
Wild_Wind
И в ифах тоже можно нечаянно поставить ; и получит...

там форматированием внимание заостряется

Александр Гравит
там форматированием внимание заостряется

Если у тебя есть clang-format или твоя ide умеет в это.

Wild_Wind
И в ифах тоже можно нечаянно поставить ; и получит...

можно, кто же спорит, но если ты привыкнешь всегда скобочки ставить - вероятность этого стремится к нулю. Ну и глаз наметнный - реакция первая будет WTF dude, don't fuck with me!

Александр Гравит
громоздко

камон, что за байтоебство. Пардон за мой французкий. Это не повод создавать проблемные ситуации на будущее. Тебе его еще сапортить

Александр Гравит
громоздко

Ты читаешь код чаще чем пишешь. Не экономь на читаемости.

Александр Гравит
громоздко

если метод разработки: "на отвали" - то пойдет

Александр Гравит
для чтения громоздко

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

Александр Гравит
для чтения громоздко

С точки зрения количества символов - да, но с точки зрения выражения семантики - так сразу виден скоуп.

Александр Гравит
да

ну штош, мне нечего добавить в данном случае. Но в целом, подход неправильный опасный. Но каждый выбирает свой путь

Александр Гравит
да

А как ты тогда работаешь с проектом хотябы на 0.5kLoC?

Александр-Гравит Автор вопроса
Leonid Zaliubovskyi
ну штош, мне нечего добавить в данном случае. Но в...

ну да и поэтому возникло это. видимо там у всех такая память) https://www.rsdn.org/article/mag/200401/codestyle.XML

Александр-Гравит Автор вопроса
Wild_Wind
> C# Яснопонятно.

это прям все все меняет

Александр Гравит
это прям все все меняет

Да. Это действительно всё меняет. В Managed яп-ах от многих вещей тебе страхует рантайм и компиль. В нативных без gc ты сам волен отстреливать себе ноги как угодно.

Вы просто сравниваете их, нопы на оптимизациях улетят

А для чего тогда nop использовать? Я думал раньше, что они какраз для того, чтобы оптимизатор не убирал подобные конструкции как в примере. Типо есть if, но он ни на что не влияет

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

не уверен точно на 100% но кажись gcc его не трогает, но всегда можно __asm volatile ("nop"); сделать, если верно помню синтаксис

Опередили вопрос)

Александр-Гравит Автор вопроса

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

Wild_Wind
И в ифах тоже можно нечаянно поставить ; и получит...

А если плюсы 17 версии, то можно сделать так if(i = 3; i ==3). Так что уже и это не совсем актуально

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта