внутри/вне класса структуры ?
Не нужно никаких групп. Просто напиши комментарии
В теории, в Visual Studio есть #pragma region, но это настолько редко используемая штука, что знать про неё тебе, наверное. рано. https://docs.microsoft.com/ru-ru/cpp/preprocessor/region-endregion?view=msvc-160
Есть что то плохое, в том что бы писать fan.power = fan.enable = вместо fan_power = fan_enable = ?
Кстати , неплохой совет!
Вот я тоже иногда в классах вижу кучу переменных и казалось бы было бы лучшим представлением некоторые группы инкапсулировать в структурки ( изначально я думал о неймспесах, но их нет )
Нет, ничего плохого
используй префиксы, либо объяви отдельную структуру
Я пытался их применять. В итоге они у меня в каком-то одном файле разово болтались... не пошло....
а какой-нибудь компилер кроме msvc не будет ругаться на такую прагму?
Ну в C# она вроде вполне не редкая
в теории, может сказать, что не знает такую прагму. По-хорошему, это должен быть таки warning или просто примечение, а не ошибка
На неизвестные прагмы компилятор по определению не может ругаться. Обязан игнорировать
Тогда почему комментарии лучше?
Ругается, ругается
Ну предупреждение это будет
комментарии это тоже плохо, названия переменных должны говорить сами за себя
Ну является хорошим тоном делать -Werror
ну так вот, почему бы их в группы не обьеденить, вместо префиксов. Вопрос в том ODR не будет нарушено если я структуры сразу в хедере определю, и подключу в разные модули далее
Что значит в группы? Вот будет у тебя в одной группе Foo переменная Baz, и в группе Bar переменная Baz. Как ты сделаешь чтобы они не пересекались?
в структуры, я имею ввиду. Как в примере выше
В структуры можешь объединять, так часто делают. Но обычно так делают, когда надо куда-то передать сразу целую группу переменных
Обычно так НЕ делают
Я с точки зрения улучшения абстракции рассматриваю
Ну да, объявляют int configA, float configB, bool configC вместо того, чтобы объявить класс Config )))
Не усложняй систему без необходимости. А то знал я таких персонажей, которые паттернов с абстракциями наворотят, а потом у них ничего не работает
Так наоборот же, упростить цель. Читатель сразу видит группы, вместо простыни из переменных
Мне это видится как усложнение Приходится мотать код вверх-вниз, чтобы посмотреть, где там и что в какой группе лежит
Обсуждают сегодня