我想做这个
struct A
{
uint x;
string str;
}
mapping ((uint,bytes32,uint)=> structA);
可以使用元组作为映射中的键吗?
我想做这个
struct A
{
uint x;
string str;
}
mapping ((uint,bytes32,uint)=> structA);
可以使用元组作为映射中的键吗?
你不能,只有基本类型可以用作键,请参阅文档:https ://solidity.readthedocs.io/en/v0.5.8/types.html#mapping-types
但是,您可以bytes32使用哈希函数将元组转换为类型,keccak256并将该值安全地用作键,如下所示:
keccak256(abi.encodePacked(a, b, c))
a, b, c你的元组的值在哪里。