关于内存中结构加载的精度

时间:2015-09-26 02:51:26

标签: c++ memory-management data-structures

study_window

在这个例子中,当我创建样本结构的实例t时,我也会在内存中加载sample2。

问题是,如何才能将sampleint加载到内存中? 有没有办法只在内存中加载一部分结构? 如果答案是,就像我认为的那样,是继承。它是如何工作的?由于哈希表,执行期间是否会浪费时间?

我问的是这个问题,因为我想开发一个DOD(面向数据的设计)程序,我想更好地理解如何在内存中管理结构。

谢谢

1 个答案:

答案 0 :(得分:0)

如果您只想复制sampleint,可以声明int s = x.sampleint;您还可以memcpy() offsetof <stddef.h>内的public bool InsertItemsToInventory(String PoNo,String rqy,String exPdate,String mfDdate) { bool status = false; if (conn.State.ToString() == "Closed") { conn.Open(); } MySqlCommand newCmd = conn.CreateCommand(); newCmd.Connection = conn; newCmd.CommandType = CommandType.Text; // newCmd.CommandText = @"Insert into inventory(ItemNu,ItemName,BatchNo,Category,Qty,Unit,Supplier,ExpDate,MfdDate,ID,Location) Values('" + ItemNo + "','" + ItemName + "','" + BatchNo + "'," + cat + "," + qty + "," + unit + "," + supplier + ",'" + exPdate + "','" + mfDdate + "'," + id + "," + 17 + ")"; newCmd.CommandText = @"insert into inventory(ItemNu,ItemName,BatchNo,Category,Unit,Supplier,ID,Qty,Location,ExpDate,MfdDate) values ( (select i.Number,i.ItemName,po.perchaseorderId,i.CatId,i.UniId,i.SupId,r.ID from porder po, request r,items i,supplier s, itemcategory ic where po.PrNumber = r.PrNumbr and r.ItemNu = i.Number and s.SID=r.sup and ic.CID = r.cat and po.perchaseorderID = '" + PoNo + "' ),'" + rqy + "','"+ exPdate +"','"+ mfDdate +"',' Inventory ')"; newCmd.ExecuteNonQuery(); status = true; return status; } 宏来定义一系列内存以获取范围连续成员变量。

好像你想要的是以下之一:

声明一个样本库类型,在C ++中,样本可以继承。

仅为您要复制的个人成员声明存储空间。

让示例保存指向sample2的指针,如果不分配,则将其设置为NULL。

将代码声明为代码块中的临时代码,复制所需的部分,当内存超出范围时回收内存。