Здравствуйте Simple Boy, Вы писали:
SB>Попробовал. Работает. По крайней мере на таком примере:
Попробуй вместо BYTE использовать некий класс, и посмотри как вызываются (или не вызвыаются) конструкторы/деструкторы
SB>Но я понимаю что это не есть хороший стиль. Но в таком случае как
SB>перевыделять память полученную от new ?
SB>BYTE *p=new BYTE[2];
SB>p[0]=1;
SB>p[1]=2;
SB>BYTE *temp=new BYTE[2];
SB>memcpy(temp,p,2);
SB>delete p;
SB>p=new BYTE[3];
SB>memcpy(p,temp,2);
SB>p[2]=3;
SB>
SB>Так ?
Проще надо быть:
BYTE *p=new BYTE[2];
p[0]=1;
p[1]=2;
BYTE *temp=new BYTE[3];
memcpy(temp, p, 2);//memcpy можно использовать ограниченно - для втроенных типов или классов, которые не содержат мемберов-указателей
delete [] p;//Обрати внимание!
p = temp;