[003]容器和动态数组的使用
生活随笔
收集整理的這篇文章主要介紹了
[003]容器和动态数组的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
例:
編寫程序讀入一組 string 類型的數據,并將它們存儲在vector 中。接著,把該 vector 對象復制給一個字符指 針數組。為 vector 中的每個元素創建一個新的字符數 組,并把該 vector 元素的數據復制到相應的字符數組 中,最后把指向該數組的指針插入字符指針數組。
1 #include<iostream> 2 #include<string> 3 #include<vector> 4 5 using namespace std; 6 7 int main() { 8 vector<int> vect; 9 int vectCnt; 10 11 cout << "please input:"<<endl; 12 while (cin >> vectCnt) { 13 vect.push_back(vectCnt); 14 } 15 16 int *pTemp = new int[vect.size()]; 17 int *p = pTemp; 18 for (vector<int>::iterator iter = vect.begin(); iter != vect.end(); ++iter, ++p) { 19 *p = *iter; 20 cout << *p << endl; 21 } 22 23 delete [] pTemp; 24 return 0; 25 }容器可以直接解引用的原理在于:
? ? ? 迭代器這一概念本身就是重載過operator * 用來解引用得到元素的,這和是不是vector無關,不僅是vector,queue等等其他類型迭代器全部都是要解引用的。所以不必談“怎么知道”,迭代器全部都要解引用,除非你不是想用它來得到元素。
?
轉載于:https://www.cnblogs.com/hustcser/p/3626141.html
總結
以上是生活随笔為你收集整理的[003]容器和动态数组的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最大堆的Java实现
- 下一篇: 一些基本概念的总结