Solidity 编译器在代码中抛出 DeclarationError

Posted

技术标签:

【中文标题】Solidity 编译器在代码中抛出 DeclarationError【英文标题】:Solidity compiler throws DeclarationError in code 【发布时间】:2018-05-13 10:49:05 【问题描述】:

我正在编写投票合同,并面临引用 DeclarationError: Identifier not found or not unique. Voter[] public voters; ^---^ 的一些声明错误 这是我下面的完整代码。我不确定我做错了什么。

contract Ballot 
int public majorityVotes;
Candidate[] public candidates;
mapping (address => uint) public voterId;
Voter[] public voters;

event CandidateAdded (uint candidateId, uint amount, string description);
event Voted (uint candidateId, int result, address voter);
event Tallyvotes (uint candidateId, int result, uint tally, bool active);

更多详细代码请访问here

我正在尝试为第一次过去的投票风格创建选票,但是编译失败。我希望有人可以通过并指出一些明显的错误。

【问题讨论】:

【参考方案1】:

错误说它无法找到数据类型 Voter,因为它没有定义。

从您发布的 git 链接中,结构名称是 Vote 而不是 Voter。

【讨论】:

以上是关于Solidity 编译器在代码中抛出 DeclarationError的主要内容,如果未能解决你的问题,请参考以下文章

你能在 Java 中抛出啥?

在solidity 0.4.6中使用send()函数时合约抛出无效地址

从 lambda 表达式中抛出的已检查异常

运行以下代码时,在 .remove() 方法中抛出 UnsupportedOperationException [重复]

Spring Boot 示例在 Eclipse 中抛出 MojoExecutionException

特定网站在 QWebView 中抛出异常