CITA中合约是否支持 ABIEncoderV2 ?

http://cw.hubwiz.com/card/c/ethereum-FAQ/1/1/3/

CITA中合约是否支持 string[]作为参数?譬如string[] memory ?

@kaikai, 这个我不熟悉,你知道这个问题吗?

try the

pragma experimental ABIEncoderV2;

嗯,可以开启实验模式。不过不知道有哪些坑,string[]会引起的参数数量之类的问题?
UnimplementedFeatureError: Variable inaccessible, too deep inside stack (17)

我用这个特性也不是很多,但是目前二维动态数组作为参数好像只能用这个。

这个报错可以贴代码吗? 参数个数限制都是有的

函数参数好像只能12个。。。。。

13个都算超了。。。

是 17 个,但是 动态类型一般算两个,13 个是不是包含 string 之类的

1赞

厉害!~

你用了是哪个 solidity 编译器?
@kaikai, 我记得我们在 cita-run 里的 solc 编译器被我们改过,不知道是不是这个原因。至少我知道我们的调用栈大小是调整过的。

如果你有 modifier ,可以试试去掉换成函数内判断

没有改过,我们用的是官方的编译器。那个改过的是一个单独的 repo