【问题标题】:VDM++ clock timeVDM++ 时钟时间
【发布时间】:2012-12-06 13:43:54
【问题描述】:

我在 vdm++ 中实现了一个随机数生成器。但我想种子是来自计算机的时钟时间。有谁知道是否有与 c++ 函数 time(NULL) 等效的 vdm++ 函数?

谢谢。

【问题讨论】:

    标签: clock vdm++


    【解决方案1】:

    不存在像time(NULL) 那样获取系统时间的任何内置库,但如果您使用的是用于 VDM 的 Overture IDE,则可以很容易地在 Java 中创建这样的函数并将其链接到您的模型。

    Overture 用户指南有一个关于此的部分:14.1 Defining Your Own Java Libraries to be used from Overture.

    您必须使用 java 类创建一个 jar 文件,该类为您提供系统时间,如下所示:

    public class SystemTime
    {
        public static Value time()
        {
            return new RealValue(System.currentTimeMillis());
        }
    }
    

    及其 VDM 对应物:

    class SystemTime
    
    operations
    public static time : () ==> real
    time() == is not yet specified;
    
    end SystemTime
    

    然后将 jar 和 vdm 文件放入项目中,如下所示: 项目根/ 库/ 系统时间.jar 系统时间.vdmpp

    现在您可以使用 VDM 操作 SystemTime`time() 来获取系统时间。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-13
      • 1970-01-01
      • 2016-03-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多