【发布时间】:2013-12-09 21:37:13
【问题描述】:
我刚刚将我的 sqlite3 课程从 vs2010 express 移动到 vs2013 express。 在 Visual Studio 2010 中,一切都很好并且工作正常。
但是当(使用重新编译的 lib)我尝试运行任何类型的 sqlite3 的函数时,我在 sqlite.h 的不同代码位置得到相同的错误:
错误 C4703:可能未初始化的局部指针变量使用“p”
我记录了自己并阅读了此警告(SDL 检查出错)是指针未初始化为 NULL 或 nullptr 的错误。
MSDN 解决方案是:
1 - /wd[error] 或/和禁用 sdlchecks(我不想要!)
2 - 通过使用 NULL 或 nullptr 初始化 ptrs 来修复代码(在这种情况下我不能!)
有人知道解决我问题的正确方法吗?
解决办法:
重新编译 sqlite.lib 并带有 #pragma 警告(禁用:4703)
【问题讨论】:
-
你用的是最新的sqlite源码吗?我在 3.7.17 中没有收到此错误。
-
@dauphic 是的,我正在使用最新版本(3.8.2)
-
您可以仅对 sqlite3.c 禁用警告(或 SDL 检查)
-
@dauphic 好主意!这次我用#pragma 警告(禁用:4703)重新编译了库。成功了,谢谢:)
标签: c++ sqlite visual-studio-2013