如何执行带指针变量的函数
本人初学C++,在网上找了个程序进行修改。现在遇到一个难题,我要运行两个带指针变量的函数,我写了如下代码:
void DataShowDlg::OnPaint()
{
DrawBasic(CDC* pDC);
DrawCurve(CDC* pDC);
CDialog::OnPaint();
}
运行时错误如下:
错误30error C2065: “pDC”: 未声明的标识符
错误31error C2275: “CDC”: 将此类型用作表达式非法
请问这个问题要如何解决呢?
[解决办法]
第一,原则上讲,你要用一个函数必须先知道这个函数的作用、输入和输出是什么。只要知道需要的是什么指针,自然知道从哪里获取这个指针给它。
第二,CDC是MFC的设备环境类,如果是视图类的话OnDraw函数直接自带这个参数,你要在OnPaint里使用它的话自己获取一个控件的设备环境吧。
第三,不知道什么是设备环境去哪里获取设备环境的话,去查资料吧。如果你希望我给你讲明白,很遗憾我没这个能力。
[解决办法]
CDC *pDC;DrawBasic(pDC);//这样来用