solidity
柠檬味小发糕
一起学习,互相进步
展开
-
基于以太坊的智能合约开发教程Solidity 结构体
基于以太坊的智能合约开发教程Solidity 结构体pragma solidity ^0.4.0;contract structTest{ // 结构体的定义 struct Student{ uint grade; string name; bool sex; uint student_number; } struct Student_Two{原创 2021-12-03 16:13:04 · 233 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity 合约的销毁
基于以太坊的智能合约开发教程Solidity 合约的销毁pragma solidity ^0.4.0;contract destory{ uint public money = 100; address public owner; constructor() public{ owner = msg.sender; } function increaseMoney() public{ m原创 2021-12-03 11:29:53 · 5607 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity 多重继承
基于以太坊的智能合约开发教程Solidity 多重继承pragma solidity ^0.4.0;contract testOne { uint money =100; uint height =188; function dance()public pure returns(string){ return "one dance"; }}contract testTwo { uint money =200;原创 2021-12-03 11:18:22 · 3728 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity 全局变量自动getter函数
基于以太坊的智能合约开发教程Solidity 全局变量自动getter函数pragma solidity ^0.4.0;contract getterTest{ uint public num = 100; // 带有public修饰符的全局变量,其实是相当于创建了一个带有external修饰符的同名函数 // function num() external view returns(uint){ // // 当external修饰的同名函原创 2021-11-20 11:35:03 · 568 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity 继承与权限
基于以太坊的智能合约开发教程Solidity 继承与权限pragma solidity ^0.4.0;contract inheritTest{ // 如果不加任何的修饰符,是可以被继承的 uint money = 10000; function jump()pure internal returns(string){ return "jumping"; } function sing()pure private原创 2021-11-19 21:25:49 · 1132 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity modifier
基于以太坊的智能合约开发教程Solidity modifierpragma solidity ^0.4.0;contract modifierTest{ address owner; uint public a; constructor(){ owner = msg.sender; } modifier onlyOwner{ // 判断合约的调用者是否等于合约的拥有者 require原创 2021-11-14 17:30:40 · 1188 阅读 · 0 评论 -
基于以太坊的智能合约开发教程Solidity 构造函数
基于以太坊的智能合约开发教程Solidity 构造函数pragma solidity ^0.4.0;contract constructTest{ // 在合约部署时,构造函数就会执行 uint public a; // 旧版本创建构造函数要与合约名相同 function constructTest(){ a = 100; } }contract constructTest1{原创 2021-11-14 15:24:02 · 1122 阅读 · 0 评论 -
基于以太坊的智能合约开发教程 Solidity 变量的生命周期与值传递
基于以太坊的智能合约开发教程 Solidity 变量的生命周期与值传递pragma solidity ^0.4.0;contract valuecopy{ uint public a = 200; // a = 100; 定义完之后不能给全局变量重新赋值,会报错 function test()public view returns(uint){ // 函数体内可对局部变量进行重新赋值 uint a =400;原创 2021-11-14 14:00:11 · 574 阅读 · 0 评论 -
基于以太坊的智能合约开发教程 Solidity 函数返回值
基于以太坊的智能合约开发教程 Solidity 函数返回值pragma solidity ^0.4.0;contract funreturn{ function returnTest()view returns(uint){ uint a =10; return a; } function returnTest2() returns(uint mul){ mul =100; } funct原创 2021-11-09 19:57:18 · 995 阅读 · 0 评论 -
基于以太坊的智能合约开发教程 Solidity 函数重载
基于以太坊的智能合约开发教程 Solidity 函数重载pragma solidity ^0.4.0;contract funcParam{ uint public num; string public name; // 在控制台输入变量时,当uint处于第一个变量时,可以只输入一个变量,这是没问题的。未输入的变量会赋默认值 // 如果string类型处于第一个的输入值的话,只输入一个name,会报错。 function setPara原创 2021-11-09 19:36:45 · 713 阅读 · 0 评论 -
基于以太坊的智能合约开发教程 Solidity mapping映射
基于以太坊的智能合约开发教程 Solidity mapping映射映射类型在声明时的形式为 mapping(_KeyType => _ValueType)。 其中 _KeyType 可以是任何基本类型,即可以是任何的内建类型, bytes 和 string 或合约类型、枚举类型。 而其他用户定义的类型或复杂的类型如:映射、结构体、即除 bytes 和 string 之外的数组类型是不可以作为 _KeyType 的类型的。pragma solidity ^0.4.19;contract mapp原创 2021-11-09 18:51:05 · 2355 阅读 · 1 评论 -
基于以太坊的智能合约开发教程 Solidity 全局变量
基于以太坊的智能合约开发教程 Solidity 全局变量block.blockhash(uint blockNumber) neturns (bytes32):返回给定区块号的哈希值,只支持最近256个区块,且不包含当前区块。在版本0.4.22中奔用并被替换为。bLockhash(uint bLockNumben)block.coinbase (address):当前块矿工的地址。block.difficulty (uint):当前块的难度。block.gaslimit (uint)当前块的原创 2021-11-07 11:00:19 · 537 阅读 · 0 评论 -
基于以太坊的智能合约开发教程 Solidity 地址与交易
基于以太坊的智能合约开发教程 Solidity地址与交易地址与交易包括使用钱包转移资金,合约与合约账户,transfer转移资金学习代码如下:pragma solidity ^0.4.19;contract payabletest{ // 可以进行转账操作,在部署成功之后,在页面当中的value填入10ether, //然后点击pay,就能发现外部账户当中的10ether成功转入合约账户,而且getBalance可以查看这个账户的金额 fu原创 2021-11-07 10:32:06 · 2287 阅读 · 0 评论 -
Solidity实现简单的智能合约
Solidity实现简单的智能合约今天使用solidity来实现一个简单的智能合约Solidity是以太坊中编写智能合约的语言,编译成字节码之后可以运行在以太坊虚拟机上。solidity语法与JavaScript很相似,有编程基础的开发者可以轻松上手,智能合约一旦部署就无法修改。首先介绍我们的编译工具: Remixremix是一款非常好用的在校编译工具,我们通过这个工具能部署实现简单的智能合约。 传送门:链接: remix.打开之后首页会是这样的。接下来我向大家演示一下如何实现helloworl原创 2021-11-01 15:14:57 · 4606 阅读 · 1 评论
分享