我们常常会遇到需要临时动态分配数组空间的情形。如:
char * buf = new char[100];
_ltoa(100,buf,10);
delete[] buf;
一不小心就可能忘了释放内存空间导致内存泄漏。其实我们可以利用vector的特性来实现同样的功能。
vector<char> buf(10);
_itoa(100,&buf[0],10);
在buf 的生命周期外的地方,buf的空间被释放,我们不用去关心什么时候释放空间。
但要注意的是,如果动态分配数组空间需要被buf 的生命周期外的地方使用的话,这种方式并不合适。