为了账号安全,请及时绑定邮箱和手机立即绑定

我的第二个实例化对象是否有理由采用我的第一个对象的值?

我的第二个实例化对象是否有理由采用我的第一个对象的值?

C#
MMMHUHU 2022-11-21 21:44:11
当我插入第二个对象(一个孩子)时,我需要给他的父母分配他孩子的名字(已经有孩子对象,属性中有父母的名字),但是当我调用父对象时总是返回子对象。我正在使用哈希表来存储“货物”对象。// Hashtable(key,value)TablaCargos(CargoObject.Name, CargoObject)每个 Cargo 都应该有一个 Parent 和一个 Child 列表我班货物的一部分class Cargo {  private string nombre;  private string codigo;  private string padre;  private List<string> hijos = new List<string>();  public Cargo() {    nombre = "";    codigo = "";    padre = "";    hijos = new List<string>();  }  //getter and setters}我的表格Cargo cargo = new Cargo();Cargo cargoHijo = new Cargo();Cargo cargoPadre = new Cargo();Hashtable TablaCargos = new Hashtable();string Root = "";private void btnAgregar_Click(object sender, EventArgs e){  cargo.Nombre = txtNombre.Text;  cargo.Codigo = txtCodigo.Text;  cargo.Padre = txtPadre.Text;  TablaCargos.Add(txtNombre.Text, cargo);  Ordenamiento(txtNombre.Text);}private void Ordenamiento(string cargoActual) {  cargoHijo = (Cargo)TablaCargos[cargoActual];  if (cargoHijo.Padre == "") {    // THIS IS A PARENT    Root = cargoActual;  } else {    // THIS IS A CHILD    AsignarPadre(cargoHijo.Padre, cargoHijo.Nombre);}private void AsignarPadre(String Padre, String Hijo){  // THE PROBLEM IS HERE, CLEARLY I SEND THE Parent's KEY  cargoPadre = (Cargo)TablaCargos[Padre];  // BUT IN THE NEXT LINE cargoPadre TAKES THE VALUE OF THE CHILD  // THE SAME VALUE OF cargoHijo  cargoPadre.Hijos.Add(Hijo);}我希望将孩子的名字分配给父母的孩子财产,但孩子却拿走了。也许我错过了一个实例化或者,我不知道
查看完整描述

1 回答

?
神不在的星期二

TA贡献1963条经验 获得超6个赞

cargo = new Cargo();一开始用这行就解决了问题btnAdicionar_Click。谢谢大家的时间和建议。:)



查看完整回答
反对 回复 2022-11-21
  • 1 回答
  • 0 关注
  • 54 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信