如何在以太坊上运行投票代码并获得结果?

时间:2016-07-29 15:44:38

标签: blockchain ethereum solidity smartcontracts

我在MIST以太坊钱包上执行了here张贴的代码,问题是我无法找到如何停止"停止"投票并获得最终结果。  你能告诉我吗?

1 个答案:

答案 0 :(得分:0)

在雾中转到您的合同并运行winningProposal()功能。这计算了考虑所有先前投票的获胜提案。

/// @dev Computes the winning proposal taking all
/// previous votes into account.
function winningProposal() constant
        returns (uint winningProposal)
{
    uint winningVoteCount = 0;
    for (uint p = 0; p < proposals.length; p++) {
        if (proposals[p].voteCount > winningVoteCount) {
            winningVoteCount = proposals[p].voteCount;
            winningProposal = p;
        }
    }
}

请注意,mist重命名/清理函数名称,它可以命名为Winning Proposalwinning proposal。你可以不加任何参数调用它。

它将返回投票最多的提案的ID。请参阅proposals struct:

// This is a type for a single proposal.
struct Proposal
{
    bytes32 name;   // short name (up to 32 bytes)
    uint voteCount; // number of accumulated votes
}