Solidity
ihan1001
实践过,才展示
展开
-
【00】【solidity最新教程】-简介
(1)如果不想让矿工作弊的话,在智能合约中使用随机数会很棘手 (注:在智能合约中使用随机数很难保证节点不作弊, 这是因为智能合约中的随机数一般要依赖计算节点的本地时间得到, 而本地时间是可以被恶意节点伪造的,因此这种方法并不安全。这里的问题不是很严重,因为有限的 gas 也作为 send 的一部分,但仍然暴露了一个缺陷: 以太币 的传输过程中总是可以包含代码执行,所以接收者可以是一个回调进入 withdraw 的合约。除此之外,智能合约的每一次执行都是公开的,而且源代码也通常是容易获得的。原创 2024-04-05 11:28:32 · 1196 阅读 · 0 评论 -
solidity全局变量01
【代码】solidity全局变量01。原创 2022-10-06 17:31:18 · 431 阅读 · 0 评论 -
solidity 函数01
函数可见性 public private external internal。外部定义的叫自由函数,并始终具有隐式的internal可见性。状态可变性 pure view 表示是否读取和修改变量状态。函数可以在合约内部和外部定义。function 函数关键字。原创 2022-10-05 20:58:53 · 137 阅读 · 0 评论 -
solidity 控制结构01
/计算1-10所有奇数的和(遇到6中断)原创 2022-10-05 20:31:20 · 380 阅读 · 0 评论 -
Solidity语言基础-数组02
内存数组:可使用new关键字在内存(memory) 中基于运行时动态创建固定长度的数组。与存储(storage) 数组相反的。是,你不能通过修改成员变量.push改变内存(memory) 数组的大小,即内存数组创建后的长度是固定的。●数组元索可以是任何有效的Solidity数据类型,包括映射或结构体。●数组具有连续的内存位置,通过索引访问数组中的元素,索引从0开始;●数组可以在声明时指定长度,也可以动态调整大小(长度);●数组是存储相同数据类型的固定元素集合的数据结构;pop() 弹出。原创 2022-10-05 19:45:50 · 672 阅读 · 0 评论 -
solidity 结构体01
【代码】solidity 结构体01。原创 2022-10-05 19:44:52 · 106 阅读 · 0 评论 -
solidity 常量02
不可变量的关键字,只允许在构造时赋值一次,之后同常量一样无gas费用。常量是指不能修改的变量,状态变量,在合约里使用常量量可以节约汽油费。常量关键字、除了初始化赋值意外禁止赋值不占内存槽位即无gas费用。//演示常量和不可变量的声明和用法。原创 2022-10-05 19:44:20 · 126 阅读 · 0 评论 -
solidity变量01
access modifier 访问修饰符 public private internal。变量是一个可以在运行时操作的数据占位符,变量允许用户检索和更改其存储的信息。局部变量:函数内部定义的变量,不能在函数之外访问,用于存储临时的数值。全局变量:全局使用的特殊变量,提供有关交易和区块链属性的信息。状态变量:在函数外部定义的变量,永久存储在合约存储器中。variable name 变量名。变量名称必须以字母或者下划线开头。data type 数据类型。//演示变量的声明和用法。原创 2022-10-05 19:43:53 · 102 阅读 · 0 评论 -
solidity运算符03
条件运算符,三元运算符,它首先计算表达式,然后检查对应于true,false的返回条件。对于数组,delete a[x]仅删除数组索引x处的元素,其他的元素和长度不变。delete 除适用于值类型变量外,也适用于数组和结构体,但对映射无效,%= 将左边的操作数除以右边的操作数后的余数赋给左边的操作数。对于结构体,相当于将结构体中的所有属性(成员)重置。对于静态数组,相当于将数组中的所有值重置为初始值。以上语句的结果是将变量a类型的初始值赋值给a。对于动态数组,相当于重置为数组长度为零的数组。原创 2022-10-05 19:41:06 · 578 阅读 · 0 评论 -
solidity 运算符02
左移原创 2022-10-05 18:21:51 · 493 阅读 · 0 评论 -
solidity 变量的存储01
calldata:调用数据,一个特殊的只读数据位置,用来存储函数调用的参数,包括内部函数和外部函数,类似于memory,使用calldata变量的好处是,他不会将数据保存在内存里,并确保不会修改数据。公用函数(public)和外部函数(external)中函数的存储方法只能是memory,calldata。storage:链上存储空间,该存储位置用于永久存储数据,只要合约存在数据就一直有效,存储的gas较高。映射(mapping)只能存储在storage中,并且不能在函数内部定义,映射一般声明为状态变量。原创 2022-10-04 09:23:38 · 322 阅读 · 0 评论