Diferencia entre revisiones de «Sobrecarga del operador subíndice (Programación)»
(Página creada con '<div align="justify">{{Definición|Nombre= Sobrecarga del operador subíndice (Programación)|imagen= |concepto= Este operador sirve para señalar subíndices de matrices simple...') |
|||
Línea 2: | Línea 2: | ||
'''Sobrecarga del operador subíndice (Programación)'''. Este operador sirve para señalar subíndices de matrices simples y multidimensionales; de ahí su nombre, operador '''subíndice''' o de '''selección de miembro de matriz'''. | '''Sobrecarga del operador subíndice (Programación)'''. Este operador sirve para señalar subíndices de matrices simples y multidimensionales; de ahí su nombre, operador '''subíndice''' o de '''selección de miembro de matriz'''. | ||
+ | |||
La expresión: <exp1>[exp2], se define como: *((exp1) + (exp2)) donde exp1 es un puntero y exp2 es un entero o viceversa. | La expresión: <exp1>[exp2], se define como: *((exp1) + (exp2)) donde exp1 es un puntero y exp2 es un entero o viceversa. | ||
+ | |||
Por ejemplo, arrX[3] se define como: *(arrX + 3) o *(3 + arrX), donde arrX es un puntero al primer elemento de la matriz. (arrX + 3) es un puntero al cuarto elemento, y *(arrX + 3) es el valor del cuarto elemento de la matriz. | Por ejemplo, arrX[3] se define como: *(arrX + 3) o *(3 + arrX), donde arrX es un puntero al primer elemento de la matriz. (arrX + 3) es un puntero al cuarto elemento, y *(arrX + 3) es el valor del cuarto elemento de la matriz. | ||
== Operador subíndice== | == Operador subíndice== | ||
Línea 10: | Línea 12: | ||
Vector& operator= (const Vector& v) { // función operator= | Vector& operator= (const Vector& v) { // función operator= | ||
x = v.x; y = v.y; | x = v.x; y = v.y; | ||
− | + | return *this; | |
− | } | + | } |
</div> | </div> | ||
== Puede Consultar == | == Puede Consultar == |
Revisión del 15:43 17 nov 2012
|
Sobrecarga del operador subíndice (Programación). Este operador sirve para señalar subíndices de matrices simples y multidimensionales; de ahí su nombre, operador subíndice o de selección de miembro de matriz.
La expresión: <exp1>[exp2], se define como: *((exp1) + (exp2)) donde exp1 es un puntero y exp2 es un entero o viceversa.
Por ejemplo, arrX[3] se define como: *(arrX + 3) o *(3 + arrX), donde arrX es un puntero al primer elemento de la matriz. (arrX + 3) es un puntero al cuarto elemento, y *(arrX + 3) es el valor del cuarto elemento de la matriz.
Operador subíndice
Este operador debe recibir un int y devolver el miembro correspondiente de la matriz (Los miembros son tipo Vector). Debe gozar del doble carácter de Rvalue y Lvalue, debe devolver una referencia.
Operador de asignación
Para utilizar el operador de asignación = con los objetos devueltos por el selector de miembro [ ], se deben sobrecargar para los objetos tipo Vector. Vector& operator= (const Vector& v) { // función operator=
x = v.x; y = v.y; return *this; }
Puede Consultar
- Operadores
- Sobrecarga de operadores
- Sobrecarga de operadores unarios (Programación)
- Sobrecarga de operadores binarios (Programación)
- Sobrecarga de operadores lógicos (Programación)