在SQLite的源码中,经常可以看到assert函数的身影,主要是应用于调试模式下的断言,就是判断传递进来的语句是真还是假,如果是真,继续执行,如果是假,中断,并且显示当前中断的文件以及行号。但是这里有一个问题:在发行版本上,是禁用的。
在VS的调试模式下,如果出现空指针,实际上,也会马上定位到该行空指针,并且有一个清晰的堆栈,凭什么需要多此一举??一直未曾明白。
由于尝试学习SQLite组织代码的结构和方式,并且顺便提带一下关于C++的异常处理,throw ,exception从来没有出现在我的代码中,一般情况下,都会判断指针是否为空,才会执行!!
时间: 2025-01-02 21:48:36