所以,我有一些看起来像这样的代码:
byte* ar;
foo(ar) // Allocates a new[] byte array for ar
...
delete[] ar;
为了更安全,我使用了 scoped_array:
byte* arRaw;
scoped_array<byte> ar;
foo(arRaw);
ar.reset(arRaw);
...
// No delete[]
问题是,有没有任何现有的方法可以只使用 scoped_array,而不使用临时原始数组?
我可能可以编写一个就地“重置器”类,只是想知道该功能是否存在而我错过了它。
谢谢,丹