posted @ 2011-07-13 00:53 皓月云天 阅读(22227) 评论(0) 推荐(2) 编辑
摘要:
以前经常遇到这个警告信息,因为运行并没有什么问题,所以也没深究。但是耿耿于怀那个“ 0 个错误,0 个警告”的成功提示,在网上搜了一下。原来问题出在默认库的引用选择上。VS2008,项目——属性——配置属性——C/C++——代码生成:他有/MT,/MTd,/Md,/MDd四个选项,你必须让所有使用的库都使用相同的配置,否则就会有相应的提示,甚至可能会出现无法解析的函数。有时我们使用的库不是自己可以控制的,那么就只能把工程属性设置成和你使用的库相同的选项。错误1 error LNK2005: _free 已经在 libcmtd.lib(dbgheap.obj) 中定义 MSVCRT.lib错误2 阅读全文
摘要:
解决方法属性=》配置属性=》预编译头=》不使用预编译头如果预编译头文件被正确使用时,它确实大大提高我们编程的效率(你工作中,有多少时间是在等编译完成?很多吧,这个时候一般都很无聊,无奈,浪费时间)。但是他太容易用错了. 下面是几种常见的错误用法.1) 在预编译头文件里include自己的头文件(当然, 如果你的头文件不经常变化, 也可以)原因:自己的头文件一般会经常变, 便利后导致预编译的东东重新编译, 降低了编译速度.2) 在其他的头文件里也include 预编译头文件假设你的其他头文件也include了预编译头文件, 如果别人引用你的这个头文件又没有设置成预编译头文件, 那引用你头文件的这 阅读全文
posted @ 2011-07-13 00:40 皓月云天 阅读(2838) 评论(0) 推荐(0) 编辑
摘要:
warning C4996: '_vsnprintf': This function or variable may be unsafe. ......warning C4996: strcpy was declared deprecated出现这样的警告,是因为VC2005之后的版本中认为CRT中的一组函数如果使用不当,可能会产生诸如内存泄露、缓冲区溢出、非法访问等安全问题。这些函数如:strcpy、strcat等。对于这些问题,VC2005建议使用这些函数的更高级的安全版本,即在这些函数名后面加了一个_s的函数。这些安全版本函数使用起来更有效,也便于识别,如:strcpy_ 阅读全文
posted @ 2011-07-12 23:22 皓月云天 阅读(13540) 评论(0) 推荐(1) 编辑
摘要:
解决方法参照Windows SDK 7.0wxdebug.cppstatic DWORD g_dwLastRefresh = 0; 阅读全文
posted @ 2011-07-12 22:59 皓月云天 阅读(349) 评论(0) 推荐(0) 编辑
摘要:
解决方法参照Windows SDK 7.0outputq.cpp增加声明long iDone = 0; 阅读全文
posted @ 2011-07-12 22:56 皓月云天 阅读(379) 评论(0) 推荐(0) 编辑
摘要:
解决方法参照Windows SDK 7.0winutils.cppCount 前面加 UINT 阅读全文
posted @ 2011-07-12 22:50 皓月云天 阅读(911) 评论(0) 推荐(0) 编辑