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

Как лучше объединять переменные в классе в логические группы? Создавая

внутри/вне класса структуры ?

27 ответов

25 просмотров

Не нужно никаких групп. Просто напиши комментарии

В теории, в Visual Studio есть #pragma region, но это настолько редко используемая штука, что знать про неё тебе, наверное. рано. https://docs.microsoft.com/ru-ru/cpp/preprocessor/region-endregion?view=msvc-160

Ilya Zviagin
Не нужно никаких групп. Просто напиши комментарии

Есть что то плохое, в том что бы писать fan.power = fan.enable = вместо fan_power = fan_enable = ?

Aleksei-Budyakov Автор вопроса
SetPf
Есть что то плохое, в том что бы писать fan.power ...

Вот я тоже иногда в классах вижу кучу переменных и казалось бы было бы лучшим представлением некоторые группы инкапсулировать в структурки ( изначально я думал о неймспесах, но их нет )

используй префиксы, либо объяви отдельную структуру

Ilya Zviagin
Кстати , неплохой совет!

Я пытался их применять. В итоге они у меня в каком-то одном файле разово болтались... не пошло....

🐈
Я пытался их применять. В итоге они у меня в каком...

а какой-нибудь компилер кроме msvc не будет ругаться на такую прагму?

🐈
В теории, в Visual Studio есть #pragma region, но ...

Ну в C# она вроде вполне не редкая

Kirill 🚜
а какой-нибудь компилер кроме msvc не будет ругать...

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

Kirill 🚜
а какой-нибудь компилер кроме msvc не будет ругать...

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

Aleksei-Budyakov Автор вопроса
Ilya Zviagin
Нет, ничего плохого

Тогда почему комментарии лучше?

Danya🔥
Ругается, ругается

Ну предупреждение это будет

Aleksei Budyakov
Тогда почему комментарии лучше?

комментарии это тоже плохо, названия переменных должны говорить сами за себя

Ilya Zviagin
Ну предупреждение это будет

Ну является хорошим тоном делать -Werror

Aleksei-Budyakov Автор вопроса
Kirill 🚜
комментарии это тоже плохо, названия переменных до...

ну так вот, почему бы их в группы не обьеденить, вместо префиксов. Вопрос в том ODR не будет нарушено если я структуры сразу в хедере определю, и подключу в разные модули далее

Aleksei Budyakov
ну так вот, почему бы их в группы не обьеденить, в...

Что значит в группы? Вот будет у тебя в одной группе Foo переменная Baz, и в группе Bar переменная Baz. Как ты сделаешь чтобы они не пересекались?

Aleksei-Budyakov Автор вопроса
Kirill 🚜
Что значит в группы? Вот будет у тебя в одной груп...

в структуры, я имею ввиду. Как в примере выше

Aleksei Budyakov
в структуры, я имею ввиду. Как в примере выше

В структуры можешь объединять, так часто делают. Но обычно так делают, когда надо куда-то передать сразу целую группу переменных

Aleksei-Budyakov Автор вопроса
Kirill 🚜
В структуры можешь объединять, так часто делают. Н...

Я с точки зрения улучшения абстракции рассматриваю

Ilya Zviagin
Обычно так НЕ делают

Ну да, объявляют int configA, float configB, bool configC вместо того, чтобы объявить класс Config )))

Aleksei Budyakov
Я с точки зрения улучшения абстракции рассматриваю

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

Aleksei-Budyakov Автор вопроса
Kirill 🚜
Не усложняй систему без необходимости. А то знал я...

Так наоборот же, упростить цель. Читатель сразу видит группы, вместо простыни из переменных

Aleksei Budyakov
Так наоборот же, упростить цель. Читатель сразу ви...

Мне это видится как усложнение Приходится мотать код вверх-вниз, чтобы посмотреть, где там и что в какой группе лежит

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

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

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