Copyright © 2022-2024 aizws.net · 网站版本: v1.2.6·内部版本: v1.23.3·
页面加载耗时 0.00 毫秒·物理内存 71.8MB ·虚拟内存 1301.0MB
欢迎来到 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 ...