C# 无法转换';项目[]和#x27;至';项目';
在这个问题中,我需要使用“AddItem”方法(在另一个名为Inventory的.cs中找到)将“StoreStartingItem”数组中的每个项目添加到商店的库存中 我尝试过简单地调用该方法并通过它运行数组,如下所示:C# 无法转换';项目[]和#x27;至';项目';,c#,C#,在这个问题中,我需要使用“AddItem”方法(在另一个名为Inventory的.cs中找到)将“StoreStartingItem”数组中的每个项目添加到商店的库存中 我尝试过简单地调用该方法并通过它运行数组,如下所示: Inventory.AddItem(StoreStartingItems); public bool AddItem(Item item) { if (mItems == null) return tr
Inventory.AddItem(StoreStartingItems);
public bool AddItem(Item item)
{
if (mItems == null)
return true;
else
return false;
}
但是,我不断收到一个错误”参数1:无法从“Shop.Item[]”转换为“Shop.Item”
我已尝试将“AddItem”方法从使用类参数更改为类数组参数,如下所示:
Inventory.AddItem(StoreStartingItems);
public bool AddItem(Item item)
{
if (mItems == null)
return true;
else
return false;
}
为此:
public bool AddItem(Item[] item)
{
if (mItems == null)
return true;
else
return false;
}
但是我得到一个错误“非静态字段、方法或属性”Inventory.AddItem(Item[])”
“需要对象引用
我做错了什么?它看起来像是
AddItem
获取了一个项
,但您正在向它传递一个项的数组(项[]
)
试试这个:
foreach (var item in StoreStartingItems)
Inventory.AddItem(item)
如评论中所述,您可能想先阅读更多关于C#和面向对象编程的内容,或者学习一些教程。请了解静态关键字您的参数名是项
,但您从未在方法中使用过它,那么为什么首先要传递它呢?