C sharp - <this>

   
Vista:

<this>

Publicado por Miguel (5 intervenciones) el 10/08/2016 11:08:15
Hola, estoy en el camino de aprendizaje de c#, se que el operador this se utiliza para diferenciar los atributos de clase de los parametros de método cuando estos se llaman igual, pero, cuando aparece this en los parametros y nada más, que significado tiene? he buscado por la red, invertido horas, pero no me he aclarado,

Muchas gracias

Ejemplo:

1
2
3
4
5
6
7
8
private VariableObject<string> m_testVar;
private VariableSeries<Double> m_seriesVar;
private VariableSeries<Double> m_seriesVar2;
protected override void Create()
{
m_testVar = (VariableObject<string>)CreateSimpleVar<string>();
m_seriesVar = (VariableSeries<double>)CreateSeriesVar<double>();
m_seriesVar2 = new VariableSeries<Double>(this);
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

<this>

Publicado por Nacho (34 intervenciones) el 10/08/2016 21:27:37
The this keyword refers to the current instance of the class and is also used as a modifier of the first parameter of an extension method.

Eso es this. Así se entiende para qué se manda como parámetro.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

<this>

Publicado por Miguel (5 intervenciones) el 12/08/2016 10:29:56
Pero cuando esta usado solo? no como modificador de una variable que es propiedad o parametro?

Ex: private metodo (this);
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

<this>

Publicado por Nacho (34 intervenciones) el 12/08/2016 10:52:46
This no es lo que crees. Es lo que pone en el primer mensaje mío. This es el pronombre demostrativo este en inglés. This, este, hace referencia a la clase actual, a la clase en la que estás, desde la que llamas una función o lo que sea.

this.Name es el nombre de la clase actual, lo mismo que Name a secas.

Si le pasas this a una función le estás pasando la referencia a la clase actual, a la clase desde la que llamas esa función.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar