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

C# Shop类内调用List<Item>变量items提示不存在于当前上下文错误求解

错误原因

1. 可执行代码位置错误

C# 类的作用域下仅允许定义字段、属性、方法、事件等成员结构,不能直接编写执行逻辑代码。你调用items.Add()的代码直接写在了Shop类的成员定义层级,不属于任何方法、构造函数、属性访问器的代码块,编译器无法识别该上下文下的items变量,因此抛出不存在的错误。

2. 作用域缩进问题

你提供的Shop类代码开头有多余的缩进,如果实际编码时误将items字段的定义写在了其他已闭合的代码块(比如某个方法内部),那么你在外部作用域调用items.Add()时也会触发该错误。


修复示例

把items.Add()的调用放到构造函数或自定义方法内部即可,示例代码如下:

public class Shop
{
    List<Item> items = new List<Item>();
    Item sword = new Item("Sword", "Melee", "Plain old sword", 10); // 注意原代码的Meele是拼写错误,正确为Melee
    public string shopName;

    // 构造函数:类实例化时自动执行,可以在这里初始化商店道具
    public Shop()
    {
        items.Add(sword);
    }

    // 也可以放到自定义方法中,需要时主动调用初始化
    public void LoadShopItems()
    {
        items.Add(sword);
    }
}

内容的提问来源于stack exchange,提问作者Branislav Živanović

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 23:57:02