当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ array::operator[]用法及代码示例



大批类通常比 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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。