The following code example is taken from the book
Object-Oriented Programming in C++
by Nicolai M. Josuttis, Wiley, 2002
© Copyright Nicolai M. Josuttis 2002
/* [] operator for variables
*/
char& String::operator [] (unsigned idx)
{
// index not in permitted range?
if (idx >= len) {
throw std::out_of_range("string index out of range");
}
return buffer[idx];
}