返回介绍

11.2 语法

发布于 2020-09-09 22:55:49 字数 1613 浏览 1076 评论 0 收藏 0

class_declaration ::=          // 引用自附录A.1.3
    [virtual] class [lifetime] class_identifier [parameter_port_list]
        [extends class_type[(list_of_arguments)]];
        {class_item}
    endclass [ : class_identifier]

class_item ::=                // 引用自附录A.1.8
    {attribute_instance} class_property
  | {attribute_instance} class_method
  | {attribute_instance} class_constraint
  | {attribute_instance} type_declaration
  | {attribute_instance} class_declaration
  | {attribute_instance} timeunits_declaration

class_property ::=
    {property_qualifier} data_declaration
  | const {class_item_qualifier} data_type const_identifier [= constant_expression];

class_method ::=
    {method_qualifier} task_declaration
  | {method_qualifier} function_declaration
  | extern {method_qualifier} method_prototype;
  | {method_qualifier} class_constructor_declaration
  | extern {method_qualifier} class_constructor_prototype

class_constructor_prototype ::=
    function new ([tf_port_list]);

class_constraint ::=
    constraint_prototype
  | constraint_declaration

class_item_qualifier ::=
    static
  | protected
  | local

property_qualifier ::=
    rand
  | randc
  | class_item_qualifier

method_qualifier ::=
    virtual
  | class_item_qualifier

method_prototype ::=
    task_prototype;
  | function_prototype;

class_constructor_declaration ::=
    function [class_scope] new [([tf_port_list])];
        {block_item_declaration}
        [super . new [(list_of_arguments)];]
        {function_statement_or_null}
    endfunction [: new]

语法 11-1—类语法(摘录自附录A)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文