C++ Primer 5th笔记(chap 12 动态内存)动态数组
生活随笔
收集整理的這篇文章主要介紹了
C++ Primer 5th笔记(chap 12 动态内存)动态数组
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1. 初始化動態(tài)分配對象的數(shù)組
int *pia=new int[10]; //10個沒有初始化的int int *pia2=new int[10](); //10個初始化為0的int string *psa=new string[10]; //10個空string string *psa2=new string[10](); //10個空string string *psa3=new string[10]{"a","an","the",sting(3,'x')}; //10個string初始化2. unique_str shared_ptr 數(shù)組
unique_str 初始化動態(tài)數(shù)組時,要在對象類型后加一對空方括號。
// up 指向一個包含10個非初始化int的數(shù)組 unique_ptr<int[]> up(new int[10]);//使用下標(biāo)運算符來訪問數(shù)組中的元素。 for (size_t i = 0; i != 10; ++i)up[i] = i;up.release(); // 自動調(diào)用delete[]銷毀其指針// to use a shared_ptr we must supply a deleter shared_ptr<int> sp(new int[10], [](int* p) { delete[] p; }); // shared_ptrs don't have subscript operator // and don't support pointer arithmetic for (size_t i = 0; i != 10; ++i)*(sp.get() + i) = i; // use get to get a built-in pointer sp.reset(); // uses the lambda we supplied【參考】
[1] 代碼smartPointer.h
總結(jié)
以上是生活随笔為你收集整理的C++ Primer 5th笔记(chap 12 动态内存)动态数组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++ Primer 5th笔记(cha
- 下一篇: C++ Primer 5th笔记(cha