|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
Нужна железобетонная переменная, которую никто не сможет изменить после присвоения ей значения. Сделать класс и поставить счетчик? Может есть решение попроще? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2013, 22:51 |
|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
КумукНужна железобетонная переменная, которую никто не сможет изменить после присвоения ей значения. Сделать класс и поставить счетчик? Может есть решение попроще? а ж/б константа "не спасёт отца русской демократии" ? и, какбэ, кто может изменить переменную в скомпиленом коде, кроме как логика выполнения этого самого кода, которую "нахлобучил" этот самый создатель кода ?? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2013, 23:08 |
|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
qwerty112, никак не спасает константа. Отец плачет... :) Она ж на стадии компиляции генерится, емнип. Код чужой, с наворотами самописных длл и его надо будет дальше отдать. Где-то накосячено, а просматривать сотни ее вхождений - влом. Пусть сама вылезет. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2013, 23:20 |
|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
qwerty112, смеяться, право, не грешно. А какое мнение по варианту с классом и счетчиком? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2013, 23:23 |
|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
Кумукqwerty112, никак не спасает константа. Отец плачет... :) Она ж на стадии компиляции генерится, емнип. что "на стадии компиляции генерится" ? КумукКод чужой, с наворотами самописных длл и его надо будет дальше отдать. Где-то накосячено, а просматривать сотни ее вхождений - влом. Пусть сама вылезет. дык, с учётом того, что код чужой, ты не боишся, что такое "некислое" изменение убъёт этот код напроч ? какая область видимости этой переменной ? она глобальная ? вообщем, вариант есть, и простой "до крика" делаешь общий модуль, в котором объявляешь новую переменную (MyVarNew) и два Property (MyVar) ОДНОИМЁННЫХ той твоей переменной, которую хочешь запретить менять, саму переменную (её декларацию) - убиваешь нуу и дальше, там где нужно, установить "старой" переменной значение, и ты "не против" - меняешь присваивание на MyVarNew там где - против - не меняешь или нигде не меняешь, а ставишь в Property Let MyVar точку останова и отслеживаешь кто/что и откуда пытается её менять Код: vbnet 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19.
Код: vbnet 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.08.2013, 23:54 |
|
Нужна неизменяемая переменная
|
|||
---|---|---|---|
#18+
qwerty112, * что "на стадии компиляции генерится" ? - дык... читал где-то. У Гетца наверное :) Поэтому их и нельзя в коде присвоить. Да, без разницы - почему. Написано - нельзя "You can't use variables, user-defined functions, or intrinsic Visual Basic functions (such as Chr) in expressions assigned to constants", значит принимаем на веру :) * не боишся, что такое "некислое" изменение убъёт этот код напроч ? - не-е :) Мне этого и надо. Иначе придется на себя взять отладку. Я сейчас вижу, что она в нескольких местах зачем-то перепроверяется. Два раза в длл засылается. Оно, может, и нормально там идет, но не дело это. Эти две переменные принципиально определяют схему работы продукта - какое окружение - тестовое или продакшн, и на каких данных. И такого добра - море. Я явные косяки поубирал, а вот такие "хитрости" - пусть сами вылазят. За код - спасибо. Это то самое, что я и думал. Я в него счетчик таки поставлю. Пусть пока работают как есть. Посмотрю потом в логах - сколько раз она меняет значение. Должно быть только один - при начальном диалоге с юзером. Нахрена им тогда ее перепроверять с контролами?... ... |
|||
:
Нравится:
Не нравится:
|
|||
19.08.2013, 00:22 |
|
|
start [/forum/topic.php?fid=60&gotonew=1&tid=2156802]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
51ms |
get topic data: |
10ms |
get first new msg: |
8ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
2ms |
others: | 270ms |
total: | 418ms |
0 / 0 |