基于以太坊的智能合约开发教程Solidity mapping在结构体当中的使用

Posted 柠檬味小发糕

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基于以太坊的智能合约开发教程Solidity mapping在结构体当中的使用相关的知识,希望对你有一定的参考价值。

基于以太坊的智能合约开发教程Solidity mapping在结构体当中的使用

pragma solidity ^0.4.0;

contract mappingTest

    struct Student 
        uint grade;
        string name;
        mapping (uint => string) map;
    
  
    // 默认为storage类型,只能够用storage类型来操作我们的结构体中的mapping类型

    Student s;   

    // memory的对象不能够直接的操作struct结构体当中的mapping

    function test()public view returns(uint,string,string)
    // 在初始化结构体的时候,会忽略这样的mapping类型
        Student memory stu = Student(99,"zhangsan");
    //把内存当中的stu对象复制给s这样的storage对象,只能通过storage对象来操作结构体中的mapping对象
        s = stu;
        s.map[0] = "helloworld";
        return (s.grade,s.name,s.map[0]);   // 99,zhangsan,helloworld
    

以上是关于基于以太坊的智能合约开发教程Solidity mapping在结构体当中的使用的主要内容,如果未能解决你的问题,请参考以下文章

基于以太坊的智能合约开发教程Solidity 继承与权限

基于以太坊的智能合约开发教程Solidity mapping在结构体当中的使用

基于以太坊的智能合约solidity学习日记

基于以太坊的开发,教你如何节省手续费

solidity开发以太坊代币智能合约

第一行代码:以太坊-使用Solidity语言开发和测试智能合约