sqlite3_destructor_type
,
SQLITE_STATIC
,
SQLITE_TRANSIENT
—
Constants Defining Special Destructor Behavior
typedef void (*sqlite3_destructor_type)(void*);
#define SQLITE_STATIC
#define SQLITE_TRANSIENT
These are special values for the destructor that is passed in as the final
argument to routines like sqlite3_result_blob(). If the destructor argument is
SQLITE_STATIC, it means that the content pointer is constant and will never
change. It does not need to be destroyed. The SQLITE_TRANSIENT value means
that the content will likely change in the near future and that SQLite should
make its own private copy of the content before returning.
The typedef is necessary to work around problems in certain C++
compilers.