如何创建一个 returns 我在 Solidity 中选择更多结构的函数?

How to create a function that returns me my selection between more structs in Solidity?

我正在尝试创建一个函数,它将 return 结构体 select 来自多个结构体。 这是我的代码:

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.0;

contract Structing {

    struct DataOne {
        uint indexOne;
        address toOne;
        }
    struct DataTwo {
        uint indexTwo;
        address toTwo;
        }

    function selectingStruct(string name_struct) public view returns(struct) {
        return _name_struct public final_selection;
        }
}

这是我得到的错误:

Parser error, expecting type name.

如何在 Solidity 中创建一个 return 在更多结构之间 selection 的函数?

您的代码段仅包含结构定义,但不包含存储任何数据的存储属性。

您需要定义您想要的确切数据类型return。没有允许 return 在 Solidity 中输入“N 中的 1”类型的魔法类型。

pragma solidity ^0.8;

contract Structing {
    // type definition
    struct DataOne {
        uint indexOne;
        address toOne;
    }

    // type definition
    struct DataTwo {
        uint indexTwo;
        address toTwo;
    }

    // typed properties
    DataOne dataOne;
    DataTwo dataTwo;

    // TODO implement setters of `dataOne` and `dataTwo` properties

    function getDataOne() public view returns (DataOne memory) { // returns type
        return dataOne; // property name
    }

    function getDataTwo() public view returns (DataTwo memory) { // returns type
        return dataTwo; // property name
    }
}