You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Solidity报DeclarationError: Identifier not found or not unique如何解决

Solidity编译DeclarationError: Identifier not found or not unique 排查修复

问题表现

基于Solidity ^0.6.0版本编写SimpleStorage1智能合约时,编译阶段抛出DeclarationError类型错误,错误提示为Identifier not found or not unique,错误定位在contracts/simplestorage1.sol文件第7行第20列,指向store函数的参数定义位置,报错代码片段:

function store(unit256 _favoriteNumber) public {
^-----

出错的完整合约原始代码如下:

pragma solidity ^0.6.0;
contract SimpleStorage1 {
    uint256 favoriteNumber;

    function store(unit256 _favoriteNumber) public {
        favoriteNumber = _favoriteNumber;
    }
}

报错原因

核心问题是Solidity内置类型名拼写错误:
Solidity中256位无符号整数的内置类型名为uint256(是unsigned integer的缩写),但代码里store函数的参数类型错写为unit256,编译器无法识别这个不存在的标识符,因此触发声明类错误。
注意合约里状态变量favoriteNumber定义时用的类型是正确的uint256,仅函数参数处拼写出错,和报错定位的位置完全匹配。

修复方法

将store函数参数处拼写错误的unit256修改为正确的uint256即可,修复后的完整可正常编译代码如下:

pragma solidity ^0.6.0;
contract SimpleStorage1 {
    uint256 favoriteNumber;

    function store(uint256 _favoriteNumber) public {
        favoriteNumber = _favoriteNumber;
    }
}

内容的提问来源于stack exchange,提问作者OT2022

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 04:31:11