Я новый с progress-4gl (OpenEdge), и я столкнулся с каким-то кодом, который для моей жизни я не могу точно понять, что он делает. Ниже приведен пример кода, который я пытаюсь проанализировать, и весь материал, который я нашел в ситуации.Что именно делает ссылка на {} аргумент?
Я понимаю, что мой ответ в материале, однако я не могу понять это так хорошо, как хочу. Надеюсь, что кто-то с немного большим знанием, чем я, может мне помочь. Спасибо за тех, кто потратил на это:
Function functionName RETURNS CHAR (integerName AS INT) {1}:
Эта функция хранится в заголовочном файле и вызывается другим процедура следующим образом:
charName = GetCommSecType (intName)
То, что я не полностью понять, почему {1} есть и что именно он делает. Если я не стану {1}, все, похоже, работает одинаково. Я смотрел в файле справки вставить свою информацию ниже:
{} ссылки Аргумент:
Ссылки на значение аргумента, что процедура переходит к вызываемой процедуры внешнего файла или включаемого файла. ABL преобразует каждый аргумент в формат символа. Это преобразование удаляет окружающие двойные кавычки, если параметр был указан как константа символьной строки в инструкции RUN или включает ссылку на файл. Когда одна процедура вызывается из другой и используются аргументы, ABL перекомпилирует вызываемую процедуру, заменяя аргументы, которые обрабатывает вызывающая процедура, и затем запускает вызванную процедуру.
Я считаю, что цель этого заключается в том, чтобы разрешить запуск функции include файлов в командной строке команды RUN. Пожалуйста, поправьте меня, если я ошибаюсь. Спасибо
Спасибо за подробное объяснение и указанный документ, это тот же документ, который я прошел до публикации. Мой вопрос к вашему объяснению следующий: функция в функции include содержит параметр и {1}. Поэтому, когда моя процедура вызывает функцию в include-файле, она переходит в Integer. Итак, тогда Интергер проходит дважды? –
Нет, это не имеет никакого отношения к вызову функции. Это влияет на включение или запуск файла. – Jensd
Число внутри {} не имеет ничего общего с параметрами функций и не используется как целое число, оно относится к положению параметра, переданного при использовании include. – pedromarce