VBScript на ASP Classic содержит функцию «int». (Он округляет числа в направлении -∞.) Предположим, что какой-то чрезмерно «умный» кодер создал глобальную переменную с именем «int». Есть ли способ получить оригинальную функцию? Я перепробовал все возможные способы обхода с хитроумными и хитрыми руководителями, но без игры в кости. Я подозреваю, что это невозможно, но я надеюсь, что кто-то узнает об этом больше, чем я.
РЕДАКТИРОВАТЬ: Спасибо за ответы. Поскольку вы все спросили, глобальная переменная, называемая «Int» (хотя, к сожалению, vbscript не учитывает регистр), является фабрикой для класса, похожего на Integer в Java. Свойство по умолчанию по сути является конструктором с одним аргументом; то есть «Int (42)» возвращает новый объект IntClass, содержащий 42. Свойство IntClass по умолчанию, в свою очередь, просто возвращает необработанное число.
Создатель пытался обойти проблему отсутствия надлежащих пространств имен и статических методов, и решение на самом деле довольно простое. Передайте IntClass, где ожидается int, и он автоматически вызовет свойство по умолчанию. Я пытаюсь исправить последний оставшийся шов: этот внешний код, вызывающий «int», не будет округляться должным образом (потому что конструктор использует CLng).