62,046
社区成员
发帖
与我相关
我的任务
分享
DataTable tblBugs = new DataTable("Bugs");
DataColumn newColumn;
newColumn=tblBugs.Columns.Add("BugID",Type.GetType("System.Int32"));
DataColumn bugProductColumn = newColumn;
//把newColumn赋予bugProductColumn
newColumn = tblBugs.Columns.Add("Version", Type.GetType("System.String"));
//然后newColumn被重新赋值
newColumn=tblBugs.Columns.Add("BugID",Type.GetType("System.Int32"));
//上面代碼,newColumn變量,指向的是一個DataColumn對象,假設地址為A
DataColumn bugProductColumn = newColumn;
//經過上面的設置,bugProductColumn保存的地址就變成A了
newColumn = tblBugs.Columns.Add("Version", Type.GetType("System.String"));
//newColumn指向另外一個DataColumne對象,假設地址為B
//而bugProductColumn的地址仍然是A!!所以沒有變
DataTable tblBugs = new DataTable("Bugs");
DataColumn newColumn;//定义了一个指针,名字叫newColumn,指向null
newColumn=tblBugs.Columns.Add("BugID",Type.GetType("System.Int32"));//给这个引用类型负值,指针指向一片内存地址,此内存地址由Add方法分配。
DataColumn bugProductColumn = newColumn;//定义新的指针,名字叫bugProductColumn ,指针指向上面一行Add分配的内存空间。
newColumn = tblBugs.Columns.Add("Version", Type.GetType("System.String"));//将指针newColumn的指向地址修改为新分配的内存地址。此时,bugProductColumn 指针的指向并未改变。
newColumn = tblPeople.Columns.Add("FullName", Type.GetType("System.String"));
//和下面的代码的等同的:
DataColumn Column = tblPeople.Columns.Add("FullName", Type.GetType("System.String"));
newColumn = Column;