![]() |
|
Модераторы: korob2001, ginnie |
![]()
|
|
| Royan |
|
|||
|
Dreamer ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 14.9.2002 Где: Лондон Репутация: нет Всего: 15 |
Я решил использовать перегруженный оператор для того чтобы исполнение SQL кода происходило вместе с присваиванием, т.е. атомарно. Почему не использовал метод типа execute()? Потому что начальство считает, что это слишком громоздко. Но тут есть нюанс. Какой бы оператор я не перегрузил все равно есть вероятность что программист напишет, так:
В общем есть способ бросать исключение, генерировать ошибку или еще что-то чтобы вариант со знаком равно не прокатывал? Вариант с константой плохой т.к. можно забыть объявить переменную константой. -------------------- Открыта вакансия Junior Java Developer'а в нашем лондонском офисе, подробнее можно узнать здесь |
|||
|
||||
| Pfailed |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 933 Регистрация: 19.7.2009 Репутация: 22 Всего: 39 |
Причина конечно у вас странная и способ выбран в лучших традициях обфускации.
Но если очень хочется, то можно вспомнить про функцию tie(). Эксперементальным путем был получен следующий набор костылей
Из минусов можно заметить своеобразное создание объектов, приходится передавать ссылку на переменную в new, иначе tie() выполнится не на нужной нам переменной. Помимо этого я не уверен, что после выхода $main::obj из области видимости объект уничтожается, надо бы проверить и возможно где-то сделать weaken(). Да и вообще это решение выглядит весьма хрупко Это сообщение отредактировал(а) Pfailed - 28.2.2012, 11:30 |
|||
|
||||
![]()
|
| Правила форума "Perl" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, korob2001, sharq. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Perl: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |