Files
godot-docs-l10n/classes/es/class_weakref.rst

57 lines
2.9 KiB
ReStructuredText

:github_url: hide
.. _class_WeakRef:
WeakRef
=======
**Hereda:** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Contiene un :ref:`Object<class_Object>`. Si el objeto es :ref:`RefCounted<class_RefCounted>`, no actualiza el recuento de referencias.
.. rst-class:: classref-introduction-group
Descripción
----------------------
Una weakref puede contener un :ref:`RefCounted<class_RefCounted>` sin contribuir al contador de referencias. Se puede crear una weakref a partir de un :ref:`Object<class_Object>` usando :ref:`@GlobalScope.weakref()<class_@GlobalScope_method_weakref>`. Si este objeto no es una referencia, la weakref débil funciona; sin embargo, no afecta al objeto. Las weakrefs son útiles cuando varias clases tienen variables que se refieren entre sí. Sin weakrefs, el uso de estas clases podría provocar fugas de memoria, ya que ambas referencias impiden que la otra se libere. Convertir una weakrefs en parte de las variables puede evitar esta dependencia cíclica y permite liberar las referencias.
.. rst-class:: classref-reftable-group
Métodos
--------------
.. table::
:widths: auto
+-------------------------------+------------------------------------------------------------+
| :ref:`Variant<class_Variant>` | :ref:`get_ref<class_WeakRef_method_get_ref>`\ (\ ) |const| |
+-------------------------------+------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descripciones de Métodos
------------------------------------------------
.. _class_WeakRef_method_get_ref:
.. rst-class:: classref-method
:ref:`Variant<class_Variant>` **get_ref**\ (\ ) |const| :ref:`🔗<class_WeakRef_method_get_ref>`
Devuelve el :ref:`Object<class_Object>` al que se refiere esta referencia débil. Devuelve ``null`` si ese objeto ya no existe.
.. |virtual| replace:: :abbr:`virtual (Normalmente, este método debería ser sobreescrito por el usuario para que tenga algún efecto.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Este método no tiene efectos secundarios. No modifica ninguna de las variables miembro de la instancia.)`
.. |vararg| replace:: :abbr:`vararg (Este método permite agregar cualquier número de argumentos después de los descritos aquí.)`
.. |constructor| replace:: :abbr:`constructor (Este método se utiliza para construir un tipo.)`
.. |static| replace:: :abbr:`static (Este método no necesita una instancia para ser llamado, por lo que puede llamarse directamente utilizando el nombre de la clase.)`
.. |operator| replace:: :abbr:`operator (Este método describe un operador válido para usar con este tipo como operando izquierdo.)`
.. |bitfield| replace:: :abbr:`BitField (Este valor es un entero compuesto como una máscara de bits de las siguientes banderas.)`
.. |void| replace:: :abbr:`void (Sin valor de retorno.)`