我这样定义的全局变量,在stdafx.h中声明了extern CPen* pppPen;然后在一个.cpp文件类外声明CPen* pppPen;
赋值
void CDrawDlg::OnTestButton()
{
pppPen = new CPen(PS_COSMETIC,5,RGB(230, 120, 120));
}
然后在另外一个类函数中测试他
void CSnapPicDlg::OnMouseMove(UINT nFlags, CPoint point)
{
if(pppPen == NULL)
AfxMessageBox("null");
}
仍然为空,为什么呢?是不是我哪儿少写了东西?
赋值
void CDrawDlg::OnTestButton()
{
pppPen = new CPen(PS_COSMETIC,5,RGB(230, 120, 120));
}
然后在另外一个类函数中测试他
void CSnapPicDlg::OnMouseMove(UINT nFlags, CPoint point)
{
if(pppPen == NULL)
AfxMessageBox("null");
}
仍然为空,为什么呢?是不是我哪儿少写了东西?
解决方案 »
- MFC编辑框输出字符串
- CList列表类中,如何替换中间的一个结点?我的代码如下:
- 关于VC6中使用Mshtml的问题,如何安装?
- 用ActiveMovieControl控件,如何获取媒体文件的播放时间长度,高手快来,100分
- 不能在一个DLL中调用一个图标
- 你们能不能讲讲QQ千夫指的发送原理啊,有分啊~100
- CHtmlView调打开含有JavaScript代码的网页时程序崩溃
- 问一个IDE的问题,VC程序分为Debug和Release版,两者到底有什么区别,怎样设成Release(默认Debug)
- 对话框改属性遇到问题。
- 简单问题:如何初始化一个静态字符数组???
- 急求:关于源代码语法检查的代码!
- 请问CPen成员变量如何读取HPEN句柄中的信息呢?
在SnapPicDlg.cpp中用extern声明它然后看看OnTestButton和OnMouseMove哪个函数先调用,都设断点看谁先进去。
可能:
1,if(pppPen == NULL)写成if(pppPen = NULL)
2,你定义了一个同名的变量.
3,两个函数的调用顺序.
在函数中用和改变这个全局变量的时候,我是直接用pppPen开始操作还是必须在前面再声明一次extern CPen* pppPen;呢?谢谢