C++ 中 [] 运算符重载:自定义类的下标访问
在 C++ 中,可以通过重载 [] 运算符来实现自定义类的下标访问。下面是一个示例:\n\ncpp\n#include <iostream>\nusing namespace std;\n\nclass Array {\nprivate:\n int arr[5];\n\npublic:\n int& operator[](int index) {\n if (index < 0 || index >= 5) {\n cout << "Index out of range!" << endl;\n exit(1);\n }\n return arr[index];\n }\n};\n\nint main() {\n Array myArray;\n for (int i = 0; i < 5; i++) {\n myArray[i] = i + 1;\n }\n\n for (int i = 0; i < 5; i++) {\n cout << myArray[i] << " ";\n }\n cout << endl;\n\n return 0;\n}\n\n\n在上面的例子中,我们创建了一个名为 Array 的类,其中包含一个整型数组 arr。我们重载了 [] 运算符,并返回了一个整型的引用。在重载函数中,我们首先检查索引是否越界,如果越界则输出错误信息并退出程序,否则返回对应索引的数组元素的引用。\n\n在 main 函数中,我们创建了一个名为 myArray 的 Array 对象,并使用 [] 运算符来访问和设置数组元素。最后,我们通过一个循环输出了数组元素的值。\n\n运行上述代码,将会输出:\n\n\n1 2 3 4 5\n\n\n这说明我们成功地通过重载 [] 运算符实现了自定义类的下标访问。
原文地址: https://www.cveoy.top/t/topic/pTLF 著作权归作者所有。请勿转载和采集!