我有一个 shared_array: boost::shared_array myarr(new char[m_length]);
我想重新分配数组。我想创建一个具有所需大小的新 shared_array 并使用交换提升方法,但这也会复制引用计数。你有别的想法吗?
//new_length>m_length
void func(boost::shared_array<char> &myarr,int new_length)
{
boost::shared_array<char> new_arr(new char[new_length]);
myarr.swap(new_arr);
}