大批類通常比 C-style 數組更高效、更輕量和更可靠。 C++11 中數組類的引入為 C-style 數組提供了更好的替代方案。
array::運算符[]
此運算符用於引用運算符內部給定位置處的元素。它與 at() 函數類似,唯一的區別是 at() 函數在位置不在數組大小的範圍內時拋出超出範圍的異常,而該運算符會導致未定義的行為。
用法:
arrayname[position] 參數: Position of the element to be fetched. 返回: Direct reference to the element at the given position.
例子:
Input: myarray = {1, 2, 3, 4, 5} myarray[2] Output:3 Input: myarray = {1, 2, 3, 4, 5} myarray[4] Output:5
錯誤和異常
1. 如果該位置不在數組中,則顯示未定義的行為。
2. 否則它沒有異常拋出保證。
// CPP program to illustrate
// Implementation of [] operator
#include <iostream>
#include <array>
using namespace std;
int main()
{
array<int,5> myarray{ 1, 2, 3, 4, 5 };
cout << myarray[4];
return 0;
}
輸出:
5
應用
給定一個整數數組,打印出現在偶數位置的所有整數。
Input :1, 2, 3, 4, 5 Output:1 3 5 Explanation - 1, 3 and 5 are at position 0,2,4 which are even
算法
1. 運行一個循環直到數組的大小。
2.檢查該位置是否可以被2整除,如果是,則打印該位置的元素。
// CPP program to illustrate
// Application of [] operator
#include <iostream>
#include <array>
using namespace std;
int main()
{
array<int,5> myarray{ 1, 2, 3, 4, 5 };
for(int i=0; i<myarray.size(); ++i)
{
if(i%2==0){
cout<<myarray[i];
cout<<" ";
}
}
return 0;
}
輸出:
1 3 5
相關用法
注:本文由純淨天空篩選整理自AyushSaxena大神的英文原創作品 array::operator[] in C++ STL。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。