typedef void(* sqlite3_destructor_type)(void *); #定义SQLITE_STATIC((sqlite3_destructor_type)0) #定义SQLITE_TRANSIENT((sqlite3_destructor_type)-1)
这些是析构函数的特殊值,这些值作为最终参数传递给诸如sqlite3_result_blob()之类的例程。如果析构函数参数为SQLITE_STATIC,则表示内容指针是常量,并且永远不会更改。它不需要被销毁。SQLITE_TRANSIENT值表示内容可能会在不久的将来更改,并且SQLite应该在返回之前对其内容进行自己的私有复制。
要解决某些C ++编译器中的问题,必须使用typedef。