MFC
passionkk
To be a better man.
展开
-
std::min std::max VC下编译错误 error C2589: “(”:“::”右边的非法标记 error C2059: 语法错误:“::”
新建了一个win32的控制台工程,用到std::min函数,结果报错:error C2589: “(”:“::”右边的非法标记error C2059: 语法错误:“::”解决办法:加上括号 (std::min)(a, b) (std::max)(a, b)设置项目属性,在预定义处理器中添加定义NOMINMAX来禁止使用VC的min/max宏定义。 原因:项目中包含了window...原创 2020-01-02 19:11:28 · 886 阅读 · 0 评论 -
#define new DEBUG_NEW
有时候在代码中会看到入下代码#include “graphics.h” // 引用头文件…#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif// 类成员函数的实现体CXX::CXX(){…}简单对这段代码进行说明:#ifdef _转载 2015-06-15 11:37:01 · 424 阅读 · 0 评论 -
_stdcall,_cdecl区别
(1) _stdcall调用 _stdcall是Pascal程序的缺省调用方式,参数采用从右到左的压栈方式,被调函数自身在返回前清空堆栈。 WIN32 Api都采用_stdcall调用方式,这样的宏定义说明了问题: #define WINAPI _stdcall 按C编译方式,_stdcall调用约定在输出函数名前面加下划线,后面加“@”符号和参数的字节数,形如。转载 2015-08-24 15:44:09 · 373 阅读 · 0 评论 -
关于Cannot find or open the PDB file ntdll.dll gdi32.dll user32.dll 的解决办法
如果用VS2010编译工程时出现以下问题:'M5DApp.exe': Loaded 'C:\Windows\System32\ntdll.dll', Cannot find or open the PDB file'M5DApp.exe': Loaded 'C:\Windows\System32\kernel32.dll', Cannot find or open the PDB file原创 2015-10-26 16:47:47 · 4034 阅读 · 3 评论 -
VS调试时把指向数组的指针按照数组方式查看
使用VS的调试的时候,如果一个指针是指向一个数组的(例如指向动态分配的一块内存),那么默认情况下只显示指针指向的第一个元素 可以在监视窗口添加指针加逗号数字的形式按照数组查看。 例如指针为p,那么输入p,4就可以查看p指向的连续4个元素。使用VS的调试的时候,如果一个指针是指向一个数组的(例如指向动态分配的一块内存),那么默认情况下只显示指针指向的第一个元素可以转载 2015-12-11 18:13:56 · 6363 阅读 · 1 评论