• 第十八章 ObjectScript - 使用例程


    第十八章 ObjectScript - 使用例程

    例程

    可以将例程视为 ObjectScript 程序。例程可以从头开始编写,也可以在编译类时自动生成。

    Procedures, Functions, and Subroutines 过程、函数和子程序

    ObjectScript 例程中,标签定义以下代码单元之一的起点:

    • Procedures过程(可选地返回一个值)。过程中定义的变量是该过程私有的,这意味着它们不可用于其他代码。对于函数和子例程来说,情况并非如此。

    过程也称为过程块。

    • 函数(返回值)。
    • 子例程(不返回值)。

    建议使用过程Procedures,因为这可以简化控制变量范围的任务。然而,在现有代码中,可能还会看到函数和子例程,并且能够识别它们非常有用。以下列表显示了所有这些形式的代码的外观。

    procedure
    label(args) scopekeyword {
        zero or more lines of code 
        QUIT returnvalue
        }
    
    • 1
    • 2
    • 3
    • 4

    或者

    label(args) scopekeyword {
        zero or more lines of code 
        }
    
    • 1
    • 2
    • 3

    label 是过程的标识符。

    args 是可选的以逗号分隔的参数列表。即使没有参数,也必须包含括号。

    可选的scopekeyword是以下之一(不区分大小写):

    • Public - 如果指定 Public,则该过程是公共的,并且可以在例程本身之外调用。
    • Private(过程的默认值)。如果指定 Private,则该过程是私有的,只能由同一例程中的其他代码调用。如果尝试从另一个例程访问该过程,则会发生 错误。

    returnvalue 是一个可选的、要返回的单个值。要返回值,必须使用 QUIT 命令。如果不想返回值,可以省略 QUIT 命令,因为大括号表示过程结束。

    过程可以将变量声明为公共变量,尽管这种做法并不被认为是现代的程序推荐。为此,可以在紧邻范围关键字之前的方括号中包含以逗号分隔的变量名称列表。

    function
    label(args) scopekeyword
        zero or more lines of code 
        QUIT optionalreturnvalue
    
    • 1
    • 2
    • 3

    args 是可选的以逗号分隔的参数列表。即使没有参数,也必须包含括号。

    可选的作用域关键字Public(函数的默认值)或 Private

    subroutine
    label(args) scopekeyword
        zero or more lines of code 
        QUIT
    
    • 1
    • 2
    • 3

    args 是可选的以逗号分隔的参数列表。如果没有参数,则括号是可选的。

    可选的作用域关键字是 Public(子例程的默认值)或 Private

    下表总结了例程、子例程、函数和过程之间的差异:

     RoutineSubroutineFunctionProcedure
    可以接受参数noyesyesyes
    可以返回值nonoyesyes
    可以在例程之外调用(默认情况下)yesyesyesno
    其中定义的变量在代码执行完成后可用yesyesyes取决于变量的性质

    变量可用性和范围有更多详细信息。

    注:在日常用法中,通常称呼“子例程subroutine”可以表示过程procedure、函数function或子例程subroutine

  • 相关阅读:
    基于51单片机8位竞赛抢答器_倒计时可调+LED跑马灯
    40个高质量SSM毕设项目分享【源码+论文】(三)
    服务器的基本概念与初识Ajax
    rhcsa5(日志、维护准确时间)
    AsyncContext优雅实现HTTP长轮询接口
    代码随想录Day21 回溯 LeetCodeT216 组合总和III LeetCode T17电话号码的字母总和
    MFC 静态库导入,动态库导入方式
    C++--智能指针--1123
    opensbi入门
    3dmax常用操作快捷键复合操作法及解决快捷键冲突2021
  • 原文地址:https://blog.csdn.net/yaoxin521123/article/details/132683449