【发布时间】:2010-04-05 04:55:56
【问题描述】:
声明:
LPWSTR** lines= new LPWSTR*[totalLines];
然后我设置使用:
lines[totalLines]=&totalText;
SetWindowText(totalChat,(LPWSTR)lines[totalLines]);
totalLines++;
现在我知道 totalText 是正确的,因为如果我 SetWindowText 使用 totalText 它工作正常。我也需要 totalLines 中的文本。
我也在做:
//accolating more memory.
int orgSize=size;
LPWSTR** tempArray;
if (totalLines == size) {
size *= 2;
tempArray = new LPWSTR*[size];
memcpy(tempArray, lines,sizeof(LPWSTR)*orgSize);
delete [] lines;
lines = tempArray;
}
在需要时分配更多内存。
我的问题是这些行没有得到正确的数据。它第一次工作,然后它被破坏了。起初我以为我在覆盖,但 totalLines 增加了。希望这是足够的信息。
【问题讨论】:
-
有什么理由不使用矢量?您可以通过
&vec[0]获取缓冲区。