当前位置: 首页 > news >正文

小米官网首页企业网站优化方案

小米官网首页,企业网站优化方案,电脑做视频的网站比较好,怎么做网站商城目录 引言 一、变量的定义 二、整型 如何在Move中表示小数和负数? 三、运算符 as运算符 布尔型 地址类型 四、什么是包? 五、什么是模块? 六、如何定义方法? 方法访问权限控制 init方法 总结 引言 Move 是一种专为区…

目录

引言

一、变量的定义

二、整型

如何在Move中表示小数和负数?

三、运算符

as运算符

布尔型

地址类型

四、什么是包?

五、什么是模块?

六、如何定义方法?

方法访问权限控制

init方法

总结


引言

        Move 是一种专为区块链智能合约开发设计的强类型编程语言,旨在提高安全性和灵活性。它的类型系统和模块化设计使得开发者能够以清晰、简洁的方式定义合约逻辑。在 Move 中,变量的定义严格遵循类型声明的要求,确保了代码在编译阶段就能捕获类型错误,减少了运行时错误的可能性。此外,Move 提供了多种数据类型,包括整型、布尔型和地址类型,使得开发者能够处理复杂的合约需求。理解这些基本概念是学习 Move 的基础,对于后续编写和优化智能合约至关重要。

可在b站搜索这位up主~

一、变量的定义

let a : u32 = 10u32;

let 变量名称: 类型 = 变量值

变量名称只能是:(a-z和A-Z)以及英文下划线(_)

Move是一门强类型的编程语言,没有隐式的类型转换,定义变量也需要申明类型或标注类型。

二、整型

  • Move只有6个无符号整数
  • Move没有负数和小数

如何在Move中表示小数和负数?

小数的定义是 a / b,所以只要我选择放大整数的倍数可以用来表示小数。

标准库中:https://github.com/MystenLabs/sui/blob/main/crates/sui-framework/packages/move-stdlib/sources/fixed_point32.move

负数 我们可以用前端展现和约定的方式来表示
比如 U8 类型

 1-127  表示负数
128-255 表示正数

三、运算符

as运算符

  • 只有类型相同的才能做基本运算
  • as 是 Move的 整数 类型转换运算符
  • Move 不支持类型的隐式转换
  • 语法(1u8 as u64)

fun init(ctx:&mut TxContext}{
let a : u16= 1000;
let b : u64 = 999;
let c : u32=1000;

let d = b + (c as u64);

let f = a + (c as u16);

}

布尔型

地址类型

address 在Move中是一个特殊的类型,用来在合约里面表示一个钱包地址。

字节的长度是32字节

let address1: address = @0x1;

let address2: address = @0x42;

let address3: address = @0xDEADBEEF;

let address4: address = @0x000000000000000000000000000000000000000000000000000000000000000A

 let address_2 = @primitive;

四、什么是包?

包是同一个合约地址包含的全部代码的集合,由很多模块组成。

五、什么是模块?

代码模块是代码划分权限和代码的组织方式。

moudle mod :: a {

        use sui :: tx_context :: TexContext;

        fun init (ctx:  $mut TxContext) {

        }

 moudle关键字,mod是地址名称,a是模块的名字,然后用双冒号分隔开来。然后一个花括号,吧里面会包含方法、一些引用、常量和结构体等等之类的。

六、如何定义方法?

fun <identifier> <[type_parameters: constraint],*>([identifier:type])*):

<return_type><acquires [identifier],*><function_body>

fun a () {

}

pubulic fun b () { 

}

pubilc (package) fun c () {                 //以前叫friend  现在叫package    

}

public entry fun d () {

}

public fun f(a: u32,b: u32) : bool {

        a > b

}

方法访问权限控制

init方法

1、只能是私有的

2、会在发布合约的时候自动调用一次

3、只有两种形式:

  • fun init ( ctx : $mut TxContext) { }
  • fun init ( witness : Struct, ctx : $mut TxContext) { } 

总结

        通过本次学习,我们深入探讨了 Move 编程语言的基本特性和语法结构,包括变量的定义、数据类型的使用、模块和方法的定义等。Move 的设计理念强调类型安全和代码组织的清晰性,使得区块链开发变得更加高效和安全。掌握这些知识不仅有助于我们更好地理解智能合约的实现机制,也为我们在实际开发中运用 Move 提供了坚实的基础。在未来的学习和实践中,我们可以继续探索 Move 的更多功能及其在区块链生态系统中的应用。

http://www.hrbkazy.com/news/52521.html

相关文章:

  • 苏州市网站建设个人在线网站推广
  • 公司免费网站建设知识营销成功案例介绍
  • 网站建设维护杭州徐州seo推广优化
  • 大兴快速网站建设公司网页搜索优化
  • 上海电商网站开发网络广告策划书案例
  • 公司建设网站费用怎么记账广州竞价托管代运营
  • 仁怀网站建设百度网登录入口
  • 怎样做网站的后台关键字c语言
  • 绵阳市公司网站建设网页设计规范
  • 140平米装修多少钱北京外贸网站优化
  • 服装加盟的网站建设聊城seo
  • 中信建设有限责任公司网站荆门刚刚发布的
  • 酒类做网站小红书推广怎么做
  • 成都哪家网站建设强百度快照怎么打开
  • jsp做的零食店网站网上国网app
  • 商城网站开发的完整流程中国国家培训网
  • 国内做的好的游艇网站2023年重大时政热点
  • 省建设执业资格注册中心网站有趣的软文
  • 阳江市做网站网站推广排名优化
  • 个人怎样建网站网络推广有效果吗
  • 郑州网站制作营销360站长平台
  • 做网站哪里接单抚顺网站建设
  • 网站无法添加图片百度app客服人工电话
  • 微信020网站怎么建立我们公司在做网站推广
  • 瑞安企业做网站百度知道怎么赚钱
  • 中国在数码网站注册域名好>东莞seo网站推广建设
  • 流量网站怎么做的网站关键词查询
  • 网站建设日程表及费用明细网站下载免费软件
  • 中小型企业网站建设竞价推广代运营公司
  • 做单页免费模板网站西安seo网站推广优化