【问题标题】:Create Subroutine in Universe在 Universe 中创建子程序
【发布时间】:2015-09-16 21:23:15
【问题描述】:

在执行 UniCommands 期间,我无法识别 UniObject 的错误。我在UniObjects for Java: How to get response String when error occurred in UniCommand.exec()看到了答案

但我不知道如何在 Universe 中创建子程序?

我看到了 CreateUniSubroutine 这个方法,但它只有名称和参数数量。

UniSubroutine sub = us1.CreateUniSubroutine("RUN.COMMAND", 2);

谢谢。

【问题讨论】:

    标签: universe


    【解决方案1】:

    在 UniVerse 中,您可以在程序内部和外部使用子例程。 让我告诉你如何做一个简单的例子。

    主文件:

    0001 *EXAMPLE SUBROUTINE
    0002       CRT 'ENTER A NUMBER OR Q TO QUIT:'
    0003       INPUT NUM
    0004       BEGIN CASE
    0005          CASE NUM = "Q"
    0006             GOSUB ENDPRG
    0007          CASE NUM > 0
    0008             CALL ADD5(NUM)
    0009       END CASE
    0010 ENDPRG:
    0011       CRT 'END OF PROGRAM'
    0012       CRT
    0013    END
    

    子程序文件:

    0001       SUBROUTINE ADD5(NUMBER)
    0002       NUMBER+=5
    0003       CRT NUMBER
    0004       RETURN
    0005    END
    

    在第 6 行和第 8 行的主文件中,您可以看到子例程。 希望能帮到你;)

    【讨论】:

      【解决方案2】:

      我通常只从本地 Universe 内部执行 Universe,但这里看起来是命令“CreateUniSubroutine”创建了 Universe 子例程的反射,而不是子例程本身。

      我不确定您要做什么,但这似乎允许您利用现有的 Universe 代码而不是添加新逻辑。

      【讨论】:

        【解决方案3】:

        在 Universe 中创建子例程。

        1. 您的 UniVerse 帐户中需要有一个文件类型为 19 的子程序源文件夹。它可以是本地的,也可以是来自其他 UniVerse 帐户的 qpoint。
        2. 使用任何文本编辑器(如记事本)编辑您的子程序源代码并保存到上面的源文件夹中。
        3. TELNET 到您的 UniVerse 帐户,然后键入以下内容来基本子例程。

          BASIC source.folder subroutine.name

        示例:如果源文件夹名称为 SOURCE,子程序文件名称为 RUN.COMMAND。该命令将是

        BASIC SOURCE RUN.COMMAND
        
        1. 您可能需要先对数据帐户中的子例程进行 CATALOG,然后它才能从 UniObject 中调用。

        【讨论】:

          猜你喜欢
          • 2019-04-06
          • 1970-01-01
          • 1970-01-01
          • 2022-01-14
          • 1970-01-01
          • 2019-05-08
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多