在C++中,operator[]是一个成员函数重载,用于实现类似于数组下标访问的功能。它可以让我们通过使用类似于object[index]的语法来访问类中的元素或数据。
以下是一个简单的示例,展示了如何在C++中实现operator[]:
#include <iostream>
class Array {
private:
int data[5] = {1, 2, 3, 4, 5};
public:
int& operator[](int index) {
return data[index];
}
};
int main() {
Array arr;
std::cout << arr[2] << std::endl; // 输出3
arr[3] = 10;
std::cout << arr[3] << std::endl; // 输出10
return 0;
}
在上面的示例中,Array类重载了operator[],使得我们可以通过arr[index]来访问数组data中的元素。operator[]的返回类型是int&,这样我们可以直接对返回的元素进行赋值操作。
需要注意的是,operator[]通常应该返回一个引用,以便我们可以修改数组中的元素。