我可以在初始块中给出实例名称。我在使用以下代码时收到错误。 "使用未分配的局部变量"
代码阻止
Item item = new Item()
{
Qty1 = item.Qty1 + item.Qty2
}
答案 0 :(得分:0)
假设你有一个Item类:
public class Item
{
// use constructor
public Item()
{
// set your default values here
this.Qty1 = 0; // example
this.Qty2 = 0;
}
// declare both quantity item properties here (including nullables)
public int Qty1 { get; set; }
public int Qty2 { get; set; }
}
然后,访问类中的属性,假设已设置值:
Item item = new Item()
{
Qty1 = item.Qty1 + item.Qty2
}
为了防止NullReferenceException,在实例化块中分配Qty1时,需要将int
声明为int?
。
编辑:我看到OP可能需要所谓的多个构造函数,一个用于分配默认值的空参数,另一个用于对Qty1属性执行添加:
public Item(int Qty1, int Qty2) : this()
{
this.Qty1 = Qty1 + Qty2;
}
并称之为:
Item item = new Item(Qty1, Qty2); // assume Qty1 & Qty2 are method parameters here
CMIIW。