Ejemplo de especialización::
+ T sumar(T)(T x, T y) { return x + y; }
T sumar(T: int)(T x, T y) { return x + y + 1; }
auto i = sumar(5, 6); // i == 12
auto f = sumar(5.0f, 6.0f) // f == 11.0f
Ejemplo de especialización parcial::
+ T sumar(T)(T x, T y) { return x + y; }
T sumar(T: T*)(T x, T y) { return *x + *y; }
int x = 5, y = 6;
auto i = sumar(&x, &y); // i == 11
Valor de inicialización por omisión (ejemplo: ``float.init`` -> *NaN*
[#dnan]_).
- .. [#dnan] Del inglés *Not A Number*, es un valor especial que indica que
- estamos ante un valor inválido.
+ .. [#dnan] Del inglés *Not A Number*, es un valor especial codificado según
+ IEEE 754-2008 [IEEE754]_ que indica que estamos ante un valor inválido.
``stringof``
Representación textual del símbolo o expresión (ejemplo:
``(1+2).stringof`` -> ``"1 + 2"``).
``mangleof``
- Representación textual del tipo *mutilado* [#dmangle]_.
+ Representación textual del tipo *mutilado* [#dmangle]_ [DWAB]_.
.. [#dmangle] *Name mangling* es el nombre dado comúnmente a una técnica
necesaria para poder sobrecargar nombres de símbolos. Consiste en
Estos son solo los *properties* predefinidos para todos los tipos, pero hay
una cantidad considerable de *properties* extra para cada tipo.
- Más información sobre *properties* de clases en
- http://www.digitalmars.com/d/1.0/property.html#classproperties y sobre
- *properties* predefinidos en
- http://www.digitalmars.com/d/1.0/property.html
-
.. _d_dbc: