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

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

37 ответов

11 просмотров

компилятор может все эти `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). Так что уже и это не совсем актуально

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

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

Типа вызывать GetParent и проверять на соответствие GetModuleHandle?
The Bird of Hermes
67
Do any of you guys have interesting projects one could join? I'm a Middle Full-Stack developer (JS/TS, React & Node)
Lev Shapiro
40
$res = json_decode($наша строка из респонса); $res1 = array_map(fn($o) => $o->name, $res->breadcrumbs[0]->entities); Как такое будет на Хаскеле?.. В начале весь джейсон, в ко...
Хаскель Моисеевич Гопник
27
В чем сила брат, в NASM или FASM?
Isaac Kleiner
18
Вопрос по диагностике ошибок (я знаю в чем, в данном конкретном примере, я знаю, как исправить, пример модельный, понятно, что в реальности бывает намного запутаннее). module...
ⰄⰎⰋⰐⰐⰑⰛⰤⰧⰧⰩⰄ ⰊⰑⰁⰓⰡⰛⰦⰕⰫ
11
Хтось використовував Vapor на Windows?
Jaroshevskii
15
А чем вам питонисты не угодили?😂
.
79
Есть какой-нибудь для Delphi/FPC T*Compression(Decompression)Stream на базе LZ4/Zstd/любой другой быстрый(и хорошо сжимающий) алгоритм А ещё лучше в pure pascal А ещё лучше од...
notme
52
Тут кста кто-нибудь NeoVim использует?
Simple Sorcerer
13
Оба варианта в целом подходят, но скорее создание конфликтной ситуации (на пустой основе). В прошлый раз он сказал мне про ESP32, я забыл про этот микроконтроллер, ошибся, я п...
КТ315
4
Карта сайта