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

Unity报错:函数参数中已定义变量却提示未找到定义

问题分析与解决:EventHandler封装函数变量未定义报错

你这段代码的问题很明确,主要有两个点:

  1. 变量名混淆
    函数参数定义的是ParameterSelectedCounter,但你在函数内部赋值和触发事件时,用的是根本没定义的SelectedCounter——这就是编译器提示变量未找到的核心原因,把所有用到SelectedCounter的地方换成参数ParameterSelectedCounter即可。

  2. 拼写错误
    事件名OnSelcetedCounterChanged和事件参数里的SelcetedCounter都拼错了(少了字母'e'),正确拼写应该是OnSelectedCounterChanged和SelectedCounter,拼写错误也可能导致编译器识别异常。

修正后的代码如下:

private void SetSelectedCounter(ClearCounter ParameterSelectedCounter) {
    this.ParameterSelectedCounter = ParameterSelectedCounter;
        
    if(OnSelectedCounterChanged != null) {
        OnSelectedCounterChanged(this, new OnSelectedCounterChangedEventArgs {
            SelectedCounter = ParameterSelectedCounter
        });
    }
}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.13 09:04:53