Diferencia entre revisiones de «Programación en Vala/Funcionalidades avanzadas del lenguaje»

Contenido eliminado Contenido añadido
Sigmar (discusión | contribs.)
Sigmar (discusión | contribs.)
Línea 754:
// objeto borrado.
}
}
</source>
 
Tampoco estaría permitido realizar una cosa similar al siguiente código:
 
<source lang=csharp>
public string property {
get {
return getter_method(); // MAL: Por la misma razón que arriba.
}
}
 
public string getter_method() {
return "some text"; // "some text" se duplica y se devuelve en este punto del código.
}
</source>
 
Por el contrario, el siguiente código es perfectamente legal y compila sin ningún problema:
 
<source lang=csharp>
public string property {
get {
return getter_method(); // BIEN: El método 'getter_method' devuelve una referencia sin propietario
}
}
 
public unowned string getter_method() {
return "some text";
// No se preocupe por que el texto no sea asignado a alguna variable fuerte.
// las cadenas literales son propiedad del módulo del programa en Vala,
// y existen mientras el programa esté cargado en memoria.
}
</source>