ILockBytes::SetSize 应该保留现有数据吗?

问题描述 投票:0回答:1

我已阅读有关

ILockBytes::SetSize()
的 MSDN 文档,但它没有准确回答我的
SetSize()
实现是否应保留现有数据。

例如,如果当前缓冲区大小为 100,并且调用

SetSize(120)
,是否应该在调整大小的缓冲区中保留前 100 个字节中的数据?

此外,如果当前缓冲区大小为 100,并且调用

SetSize(70)
,是否应该在调整大小的缓冲区中保留前 70 个字节中的数据?

换句话说 - 我应该在 C++ 中调用

realloc()
还是单个
alloc()

c++ ole istorage
1个回答
0
投票

是的,现有字节应该被保留。 扩展数组只是添加未指定值的新尾随字节。 截断数组只是截掉尾随字节。

© www.soinside.com 2019 - 2024. All rights reserved.