|
про константы
|
|||
---|---|---|---|
#18+
PetroNotC Sharpну я Код: plaintext 1.
а зачем ссыль? Это я не понял. Потому что вместо int в реальном коде требуется "map на 1000 пар и прочие контейнеры", а такие надо инитить только через конструктор копирования из уже подготовленного контейнера, а там "на 1000 пар и прочие". Двойные прогоны - оно конечно, но все же не гуд. А так имеем объект который изнутри менять можем, а снаружи можем только сослаться как на константный. Или мсье одарен не понять любое слово? ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 17:50 |
|
про константы
|
|||
---|---|---|---|
#18+
ну я, Я же пример простых типов приводил. Так? И для простых типов он верный. Так? А глобальная переменная для класса это оксюморон. Для мапов, векторов и т.д. этот пример не катит. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 18:07 |
|
про константы
|
|||
---|---|---|---|
#18+
ну яреальном коде требуется "map на 1000 пар и прочие контейнеры", ау меня грузится контейнер сцены (треугольники) из двоичного файла. Не знаю зачем автор совместил в вопросе все подряд. Разные подходы, код и паттерны.. ... |
|||
:
Нравится:
Не нравится:
|
|||
03.09.2019, 18:45 |
|
про константы
|
|||
---|---|---|---|
#18+
PetroNotC Sharpну я Код: plaintext 1.
а зачем ссыль? Это я не понял. Тут более подробно раскрыта тема, и её подводные камни ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 05:16 |
|
про константы
|
|||
---|---|---|---|
#18+
CEMb, Ок. В сухом остатке, у меня на 20 глобальных констант это 40 строчек кода. Если для флага ТолькоЧтение требуется сделать 60 строк вместо 40, то я это делать не буду. Оверхед. От всего не защитится. А если кто переопределит константу большими буквами (число Пи), тот сам себе ССЗБ. Со второй стороны, я же могу просто обернуть сразу все 20 структурой const и вопрос решен. С третьей стороны, добавление указателя не защитит ведь от его обнуления? Glob::MY_VAL_PTR = NULL. Imho ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 07:47 |
|
про константы
|
|||
---|---|---|---|
#18+
Сферические константы в вакууме ты можешь оборачивать чем угодно. Но реальные константы обычно принадлежат вполне конкретным сущностям и сваливать их в братскую могилу только добавляет бардака. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 12:39 |
|
про константы
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovСферические константы в вакууме ты можешь оборачивать чем угодно. Но реальные константы обычно принадлежат вполне конкретным сущностям и сваливать их в братскую могилу только добавляет бардака.вроде ты свалил, а не я. Пример был про namespace Globals и модуль globals.h. Это реальный проект. У вас таких нет? Мне жаль. Зы. Константы сущностей лежат в классе и модуле этой сущности. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 12:49 |
|
про константы
|
|||
---|---|---|---|
#18+
PetroNotC SharpЭто реальный проект. У вас таких нет? Мне жаль.Что же вас всех тянет на глобальные обобщения по результатам обзора своего местечкого болотца??? ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 12:51 |
|
про константы
|
|||
---|---|---|---|
#18+
Basil A. Sidorovболотцаобобщили? Лучше код давайте. А о том что константы сущностей не должны быть раскиданы, это СЕМЬ сказал)))). Вы его ссылку почитайте. Конретнее давайте) ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 12:54 |
|
про константы
|
|||
---|---|---|---|
#18+
PetroNotC SharpПример был про namespace Globals и модуль globals.h. Это реальный проект. У вас таких нет? Были в унаследованном проекте. Больше нет: расползлись по осмысленным местам в результате реструктуризации спагетти-кода в ООД. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 13:05 |
|
про константы
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovPetroNotC SharpПример был про namespace Globals и модуль globals.h. Это реальный проект. У вас таких нет? Были в унаследованном проекте. Больше нет: расползлись по осмысленным местам в результате реструктуризации спагетти-кода в ООД.ну мы же не максималисты? Конечно глобальные это зло. Но практически во всех либах я вижу _несколько_ глобальных на всю либу. Иначе ждём ТСа про какие константы он вообще вещает. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 13:30 |
|
про константы
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, Кстати глобальные у меня появились после замены их из #define в старом проекте. Как то тут выяснял что это правильно в плюсах. ... |
|||
:
Нравится:
Не нравится:
|
|||
05.09.2019, 13:34 |
|
про константы
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovБольше нет: расползлись по осмысленным местам в результате реструктуризации спагетти-кода в ООД.У нас как-то так же. Глобальных констант нет, все сидят в тематических местах, namespace-ах или классах. PetroNotC SharpКонечно глобальные это зло.Это просто не совсем удобно. Я бы не стал вешать ярлыки "зло" на какие-то языковые конструкции и методологии, это всегда порождает неправильную реакцию у многих людей: они сразу принимают это на веру, что ведёт к другим печальным последствиям. Важно понимать, почему это неудобно: открываешь проект через пять лет, видишь константу, даже с понятным именем, но всё равно сложно понять, зачем она, где описана и где используется. Когда она в коде торчит из конкретного namespace, объекта или класса - это более понятно. А ещё можно использовать более простые имена. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 06:36 |
|
про константы
|
|||
---|---|---|---|
#18+
CEMb, Я согласен что ПРОСТО КОНСТАНТА БЕЗ namespace это крайне неудобно. У меня ни одной такой. В java сам язык не позволяет такую завести. Под термином "глобальная константа" предлагаю в топике считать те что в отдельном файле на весь проект и в namespace. Если вы не против. Или еще кто то остался по старому?)) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 08:03 |
|
про константы
|
|||
---|---|---|---|
#18+
CEMbони сразу принимают это на веруна веру счас никто не принимает. Особенно молодёжь) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.09.2019, 08:05 |
|
|
start [/forum/topic.php?fid=57&msg=39858243&tid=2017575]: |
0ms |
get settings: |
11ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
39ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
51ms |
get tp. blocked users: |
1ms |
others: | 12ms |
total: | 147ms |
0 / 0 |