Escribo una clase de colección. Quiero sobrecargar el operador de corchetes ([]) para proporcionar acceso a los elementos de la colección.Sobrecarga de operadores de corchetes para aceptar el valor
int operator[](int i)
{
// Do stuff here
}
Mi problema es que no veo cómo escribir esto para que yo pudiera usar este operador para aceptar un valor:
myClassInstance[0] = value;
no veo ninguna manera de declarar el operador con corchetes un argumento adicional (el valor para asignar al elemento).
Sé que puedo simplemente devolver int & y la persona que llama puede asignar un valor a eso, pero internamente cada elemento se almacena en un formato diferente al que se hizo público.
¿Esto es posible?
necesita dos [] versiones (int) del operador. una versión de const y la versión no const que usted solicitó. La versión original debería tener const detrás de ella, para llamar a un objeto const; –
@Edwin: Vi tu otro comentario. Voy a darle una oportunidad. Gracias. –