Vector用陣列下標訪問的條件
vector實現陣列訪問的條件
通過兩段程式碼測試,我們得出原則就是陣列下標[]訪問,前提就是這樣的元素是存在的,就可以使用這樣的訪問形式,vector容器是過載了陣列的訪問形式。這一點程式設計師務必要小心,因為些這樣的程式是編譯通過的,但是執行的時候記憶體就會報錯!
#include <vector>
#include <iostream>
using namespace std;
int main()
{
vector<int> test;
for (int i = 0; i < 10; i++)
test.push_back(i);
cout << test[0]<<endl;
test[0] = 10;
cout << test[0] << endl;
while (true)
{
}
}
執行平臺VS2013,結果如期若下:
或者採用另外一種形式:先直接定義了容器的大小了,如下程式碼:
#include <vector>
#include <iostream>
using namespace std;
int main()
{
vector<int> test(10);
for (int i = 0; i < 10; i++)
test[i] = i;
cout << test[0]<<endl;
test[0] = 10;
cout << test[0] << endl;
while (true)
{
}
}
執行結果是完全一樣的:
總結
通過對vector的測試,總結出一點就是要想實現陣列下標的訪問,是什麼時候都可以的事情,應為vector是自帶過載該符號功能,但對於程式設計人員來說需要特別關注訪問的元素記憶體是否存在?!
相關文章
- Laravel 條件陣列 in 的用法Laravel陣列
- vector 二維陣列陣列
- C語言_指標和陣列的幾種訪問形式C語言指標陣列
- 陣列多重篩選條件排序方法陣列排序
- Java 物件陣列多屬性條件排序問題(詳解)Java物件陣列排序
- for迴圈訪問php的索引陣列PHP索引陣列
- 如何有效的刪除陣列中符合條件的值?陣列
- php之像訪問陣列一樣訪問物件PHP陣列物件
- C++ ——vector陣列筆記C++陣列筆記
- 陣列指標,指標陣列陣列指標
- 陣列指標 指標陣列陣列指標
- Go 陣列指標(指向陣列的指標)Go陣列指標
- Ext迭代陣列訪問資料陣列
- vector 與map的下標操作
- vector訪問與賦值賦值
- 指標陣列與陣列指標指標陣列
- 陣列指標和指標陣列陣列指標
- JNI/NDK開發指南(5):訪問陣列(基本型別陣列與物件陣列)陣列型別物件
- 兩數之和,返回陣列下標陣列
- 指標陣列和陣列指標與二維陣列指標陣列
- php小技巧過濾陣列的下標PHP陣列
- 雙指標查詢陣列的連續規律子陣列問題指標陣列
- C#中陣列的三種訪問方式C#陣列
- 陣列指標:a pointer to an array,即指向陣列的指標陣列指標
- 訪問vector元素方法的效率比較
- python如何對陣列內的元素進行條件運算?Python陣列
- ReentrantLock的條件佇列ReentrantLock佇列
- JS陣列學習之判斷陣列元素是不是都滿足給定條件JS陣列
- js如何使用索引訪問陣列物件中的元素JS索引陣列物件
- js建立和訪問陣列元素程式碼JS陣列
- 建立和訪問陣列及使用方法陣列
- Golang 學習——陣列指標和指標陣列的區別Golang陣列指標
- 指向陣列的指標陣列指標
- 陣列指標陣列指標
- C語言雜談:指標與陣列 (下)C語言指標陣列
- C語言雜談:指標與陣列(下)C語言指標陣列
- mysql查詢語句陣列下標擷取MySql陣列
- 陣列和指標陣列指標