libxcpc

libxcpc implementa una limpieza automática de recursos y un manejo de excepciones en C.
Descargar ahora

libxcpc Clasificación y resumen

Anuncio publicitario

  • Rating:
  • Licencia:
  • LGPL
  • Precio:
  • FREE
  • Nombre del editor:
  • Davide Libenzi
  • Sitio web del editor:
  • http://www.xmailserver.org/davide.html

libxcpc Etiquetas


libxcpc Descripción

La biblioteca libxcpc implementa una limpieza automática de recursos y el manejo de excepciones en C. LIBXCPC La biblioteca implementa una limpieza automática de recursos y el manejo de excepciones en C. El manejo de errores y el código de limpieza (al menos para el código que realiza el manejo de errores) puede tomar bastante espacio en términos de líneas de código a escribir. Esto no solo aumenta el tamaño binario, sino que hace que el código sea más difícil de leer. C ++ tiene un manejo de excepciones nativas, y esto resuelve parte del problema, mientras se mantiene expuesta la limpieza de recursos. El LIBXCPC ofrece un manejo de excepciones de C ++ como C ++, además de la limpieza automática de recursos, que se utilizará en el software escrito en C. El LIBXCPC introduce tres abstracciones, que son recursos, contenedor y excepción. El recurso es todo objeto (o acción) que necesita una limpieza. Esto puede ser un bloque de memoria asignada, un archivo abierto, una región de memoria asignada, etc., cada recurso asignado es propiedad de un contenedor. Un recurso puede ser movido de un recipiente a otro. Un contenedor es un cubo dentro de qué recurso se asignan. Un contenedor puede ser el padre de otros contenedores, por lo tanto, introduciendo una relación padre / hijo entre los contenedores. Un contenedor puede ser reasignado para ser un niño de un nuevo contenedor. Al liberar un contenedor, todos los recursos asignados dentro del contenedor se liberarán, y todos los contenedores infantiles también se liberarán recursivamente. Los contenedores de recursos simplifican en gran medida el código de limpieza de recursos, al poder emitir una sola llamada para liberar un contenedor y tener automáticamente todos los recursos contenidos por ella, se liberó también. Se agregan / se eliminan en una forma de LIFO (última vez en la primera) y la biblioteca libxcpc ofrece a las API para volver a organizar el orden de los recursos dentro de sus contextos. Una excepción es (como en C ++) cualquier tipo de condición anormal que impida que el programa fluya en su camino. Esto puede ser una asignación de memoria fallida, una falla de abrir un archivo, una falla en MMAP (2) una parte de un archivo, una falla en la opción (2) un archivo, etc., una excepción se describe mediante un número único (int) y por un DATOS ASOCIOS (VOID *). Las excepciones se lanzaron utilizando la instrucción XCPC_TRHOW (CTX, EXNO, DATA), o re-arrojarse utilizando XCPC_RETHROW (CTX). Una característica agradable del manejo de excepciones, es que le permite manejar solo cierto tipo de excepciones y diferentes excepciones en diferentes. Puntos de tu árbol de código. Uso de la biblioteca libxcpc, maneja excepciones al rodear el código de lanzamiento potencialmente con la instrucción XCPC_TRY (CTX). Luego, el código puede usar la XCPC_CATCH (EXNO) o las declaraciones XCPC_CATCH_ANY para manejar específicas o todo tipo de excepciones que ocurrieron en el código limitado por el XCPC_TRY (CTX). Un bloque de excepciones debe ser terminado por una declaración XCPC_END_TRY. Si el bloque de excepciones actual no maneja la excepción actual utilizando la instrucción XCPC_CATCH (EXNO), y no tiene una declaración XCPC_CATCH_ANY, la biblioteca de LibxCPC BEAPTRACK para encontrar un controlador válido en el código A las capas más altas de la jerarquía de llamadas. Es importante que al menos el otro bloque de excepciones use una declaración XCPC_CATCH_ANY, de modo que cualquier excepción no capturada por el código, se maneja correctamente. Cuando una excepción es capturada por un manejador, todos los recursos asignados por el código desde el principio del bloque XCPC_TRY (CTX), hasta el lugar donde se lanza la excepción, se libera automáticamente una vez que el controlador llega a la Declaración XCPC_END_TRY. ¿Qué es nuevo? En esta versión: · Esta versión agrega nuevos envoltorios de llamadas del sistema y soluciona algunos errores menores.


libxcpc Software relacionado

Dirección Tangler

Addresstangler es una función PHP que le ayuda a proteger las direcciones de correo electrónico que necesita para agregar a una página web de los bots de spam. ...

164

Descargar

Library Library

Launcher Library es una biblioteca para controlar los lanzadores de misiles conectados por USB (NO, NO ARMAS - Juguetes). ...

341

Descargar