Mostrando entradas con la etiqueta this. Mostrar todas las entradas
Mostrando entradas con la etiqueta this. Mostrar todas las entradas

sábado, 9 de septiembre de 2017

Curso de C#: Indizadores y sobrecarga de operadores

Indizadores

Un indizador es un concepto más o menos nuevo. Se trata de una simplificación de un objeto que es en realidad un array o una colección.
A modo de ejemplo se muestra un caso concreto. Un libro no es más que un objeto que contiene una serie de capítulos, para construir el objeto Libro con una colección Capítulos dentro de él, en la que sea posible añadir o modificar capítulos, de modo que necesita un método Add y un método Modify y luego llamar a estos métodos desde el código cliente:
static void Main()
{
    Libro miLibro=new Libro();

    miLibro.Capitulos.Add("Las tres crisis");
    miLibro.Capitulos.Add("Cosmos");
    miLibro.Capitulos.Modify("El mundo y sus demonios",1);

    ...
}
Un indizador, permite tratar al objeto como un array o una colección, haciendo la codificación más intuitiva. El código equivalente al anterior sería así:
static void Main()
{
    Libro miLibro=new Libro();

    miLibro[0]=" Los dragones del edén ";
    miLibro[1]="Cosmos";
    miLibro[1]=" El mundo y sus demonios";

    ...
}
Curso de C#: Indizadores y sobrecarga de operadores

sábado, 13 de septiembre de 2014

C++, Puntero implícitoTHIS, friend

El puntero implícito this
Saltar el sistema de protección. ( Friend )
Miembros static de una clase
Funciones virtuales

El puntero implícito this


Cada objeto de una determinada clase mantiene su propia copia de los datos miembro de la clase, pero no de las funciones miembro, de estas sólo existe una copia para todos los objetos de la clase; es decir, cada objeto tiene su propia estructura de datos, pero todos comparten el mismo código para cada función miembro. De este modo si necesitamos que una función miembro conozca la identidad de cada objeto para el que ha sido llamada, en C++ debemos invocar un puntero al objeto denominado this. Así por ejemplo, si declaramos un objeto.


Empleado.set_empleado( );

Puntero This, C++