typedef struct _DATA
{
char buffer[1024];
int i;
BOOL states;
char *pBuf;
}DATA, *PDATA;typedef struct _PACKET
{
char *pIodata;
PDATA pNode;
int j;
char Array[100]
}PACKET, *PPACKET;PPACKET p1 = new(PPACKET, sizeo(fPACKET));
//这里将p1赋值,
PPACKET p2 = new(PPACKET, sizeo(fPACKET));
//现在我要将p1的各项值赋给p2该如何办?也就是说要让p2和p1各项值是相同的,但是如果p1被delete后不影响p2,我用了memcpy和CopyMemory都不行其实问题就是:如何将一个new出来的结构指针(该结构的成员中的一些也是new出来的)指向的各项值复制给另外一个new出来的结构指针?是复制!不是赋值,如果一项一项赋值的话,那么new出来的成员到最后指向的是同一个内存
{
char buffer[1024];
int i;
BOOL states;
char *pBuf;
}DATA, *PDATA;typedef struct _PACKET
{
char *pIodata;
PDATA pNode;
int j;
char Array[100]
}PACKET, *PPACKET;PPACKET p1 = new(PPACKET, sizeo(fPACKET));
//这里将p1赋值,
PPACKET p2 = new(PPACKET, sizeo(fPACKET));
//现在我要将p1的各项值赋给p2该如何办?也就是说要让p2和p1各项值是相同的,但是如果p1被delete后不影响p2,我用了memcpy和CopyMemory都不行其实问题就是:如何将一个new出来的结构指针(该结构的成员中的一些也是new出来的)指向的各项值复制给另外一个new出来的结构指针?是复制!不是赋值,如果一项一项赋值的话,那么new出来的成员到最后指向的是同一个内存
解决方案 »
- 求解决一个win32显示窗口的问题
- 绑定注册机,事情是这样的。。。。。。。。。
- VS2010,MFC如何完美release?
- [高分]请求各位帮我想个办法筛选下
- 各位大虾,怎样用msdn查看directx帮助文档
- SP项目外包:有没有VC高手?winsocket和多线程和数据库比较熟悉的?
- 圖標不能打印(SDI,圖標是view 中用DrawIconEx(....)畫的)
- 如何用NuMega SmartCheck检测出内存泄露的位置?或者更好的方法~?
- 在线等待:关于多线程和winsocket的问题,急急急!!!
- VC++大挑战,少说2000万,诚招项目经理
- 两个问题
- 请问:在对话框下如何获取键盘按下的消息?
1楼的,我觉得没那么简单,注意里面包含了指针变量
mscf(扎西特勒)说的方法可行。。类似类的赋值函数
{
char buffer[1024];
int i;
BOOL states;
char *pBuf;
}DATA, *PDATA;typedef struct _PACKET
{
char *pIodata;
PDATA pNode;
int j;
char Array[100];
}PACKET, *PPACKET;void CTtdDlg::OnOK()
{
char abc[] = {"1234567890"};
DATA dd = {"12312312312", 11, TRUE, NULL}; PPACKET p1 = new PACKET;
p1->j = 11;
p1->pIodata = abc;
p1->Array[0] = '1', p1->Array[0] = '2';
p1->pNode = ⅆ PPACKET p2 = new PACKET; *p2 = *p1; delete p1;
Sleep(10);
delete p2;
//CDialog::OnOK();
}