当调用尝试将字符串从合同传递给合同时,我收到错误。在getName中有错误。我知道你不能传递字符串,但原因是什么?
返回参数类型不可访问的动态类型不是隐式的 可转换为期望类型(第一个返回变量的类型)字符串 记忆。 return toBeCalled.getName();
pragma solidity ^0.1.0;
contract ToContract{
FromContract fromContract = new FromContract();
function getName() constant returns (string) {
return fromContract.getName();
}
}
contract FromContract{
string name = 'dapp';
function getName() constant return(string){
return name;
}
}
答案 0 :(得分:1)
牢固地将字符串“ Hey”内部存储为[“ H”,“ e”,“ y”],这是一个动态数组。到目前为止,它不支持传递动态数组。您可以尝试通过将字符串作为对象的一部分传递来解决此问题。