Programación defensiva
Cada función pública verifica sus precondiciones con las macros de depuración de g_return_if_fail()
o g_return_val_if_fail()
, como se describe en la sección . El parámetro self también se verifica, para ver si no es NULL
, excepto por el destructor, myapp_spell_checker_free()
, para que sea consistente con free()
y g_free()
que acepta un parámetro NULL
por conveniencia.
Tenga en cuenta que las macros g_return
deben usarse solo para los puntos de entrada de una clase, es decir, en sus funciones públicas. Por lo general, puede asumir que los parámetros pasados a una función static
son válidos, especialmente el parámetro self. Sin embargo, a veces es útil verificar un argumento de una función static
con g_assert()
, para hacer que el código sea más robusto y auto-documentado.