Nói chung, làm thế nào để bạn khai báo chỉ mục toán tử [ ]
của một lớp cho cả quyền truy cập đọc và ghi?C++: Quá tải toán tử [] để đọc và ghi truy cập
tôi đã cố gắng một cái gì đó giống như
/**
* Read index operator.
*/
T& operator[](T u);
/**
* Write index operator
*/
const T& operator[](T u);
mang đến cho tôi những lỗi
../src/Class.h:44:14: error: 'const T& Class::operator[](T)' cannot be overloaded
../src/Class.h:39:8: error: with 'T& Class::operator[](T)'
Chỉ cần thêm giải thích thêm, điều này là do quá tải toán tử trả về tham chiếu đến đối tượng. Điều này cho phép bạn gán cho nó cũng như đọc nó, do đó chỉ cần một quá tải. – Chris