我正在写下面的简单合同,该合同存储了每个 ID 的所有问卷结果。
contract answer{
mapping(address => mapping(string => bool)) voters;
struct qList {
uint count; //The number of respondents
mapping(address => mapping(uint => uint)) answer;
}
mapping(string => qList) questionnaires;
function vote(string ID, uint qNum, uint ans) returns (bool) {
if(voters[msg.sender][ID]) throw;
voters[msg.sender][ID] = true;
questionnaires[ID].count += 1;
questionnaires[ID].answer[msg.sender][qNum] = ans;
return true;
}
function getNumResult(string ID) constant returns (uint res) {
return questionnaires[ID].count;
}
}
可以成功调用和挖掘包含参数的函数“投票”,但是当我用 ID 调用“getNumResult”时,我无法在solidity-browser屏幕中获得状态消息“等待交易被挖掘...”的返回值已经通过“投票”功能注册。
如果有人会建议导致此问题的原因和解决方案以获取带参数的函数的返回值,我们将不胜感激。