Copyright © 2022-2025 aizws.net · 网站版本: v1.2.6·内部版本: v1.25.2·
            页面加载耗时 0.00 毫秒·物理内存 151.2MB ·虚拟内存 1438.3MB
        
        欢迎来到 AI 中文社区(简称 AI 中文社),这里是学习交流 AI 人工智能技术的中文社区。 为了更好的体验,本站推荐使用 Chrome 浏览器。
        
        
        我们通过一个 Move 应用程序的范例,来了解如何编写和运行 Move 程序。
我们实现一个函数 get_num() 功能,并在 VSCode 中运行,输出指定的结果。
我们在项目的目录 modules/ 内创建一个新文件 hello_world.move。
// modules/hello_world.move
address 0x1 {
  module HelloWorld {
    public fun get_num(): u8 {
        1
    }
  }
}
如果您想使用自己的地址,而不是0x1,请确保更改此文件中的 0x1 以及下面文件中的地址。
我们在 scripts/ 目录中创建一个脚本 me.move,调用上面的模块:
// scripts/run_hello.move
script {
    use 0x1::HelloWorld;
    use 0x1::Debug;
    fun main() {
        let num = HelloWorld::get_num();
        Debug::print<u8>(&num);
    }
}
我们在保持脚本打开的同时,执行以下步骤:
⌘+Shift+P(在 Mac 上)或 Ctrl+Shift+P(在Linux / Windows上)来切换 VSCode 的命令选项板。>Move: Run Script并在看到正确的选项时,按 Enter 或单击。目录结构应如下所示:
modules/ hello_world.move scripts/ run_hello.move out/ .mvconfig.json
modules 目录下可以包含任意多的模块,所有这些模块都可以被你的脚本访问到,只要它们都被定义在 .mvconfig.json 所指定的地址下即可。
Move 程序与 Solidity 不同,分为脚本和模块。
脚本可以让开发者在交易中加入更多逻辑,在更加灵活地同时节省时间和资源。
模块允许开发人员更容易扩展区块链的功能,更加灵活地实现自定义智能合约。
Move 的基本数据类型包括: 整型 (u8, u64, u128)、布尔型 boolean 和地址 address。Move 不支持字符串和浮点数。整型整型包括 u8、u64 和 u1 ...