MFC 成员变量 数组初始化
我在对话框类里面构建了一个形式为数组成员变量,设为floatarray_new[3],然后在构造函数内将其初始化:array_new[0]=0;array_new[1]=...
我在对话框类里面构建了一个形式为数组成员变量,设为float array_new[3],然后在构造函数内将其初始化:array_new[0]=0;array_new[1]=0;array_new[2]=0; OK了 编译通过,结果在调试运行时,提示我access violence,侵占内存错误。我看出错地点是:
CMyProjectDlg dlg; m_pMainWnd = &dlg; CMyProjectDlg是我创建的对话框类,给m_pMainWnd赋值时,出错,说明创建dlg失败了。为什么我去掉这个数组成员变量就能跑通?一加上就会创建出错?求高手指点! 展开
CMyProjectDlg dlg; m_pMainWnd = &dlg; CMyProjectDlg是我创建的对话框类,给m_pMainWnd赋值时,出错,说明创建dlg失败了。为什么我去掉这个数组成员变量就能跑通?一加上就会创建出错?求高手指点! 展开
3个回答
展开全部
直接定义全局变量:float array_new[3]={0}//怎样看看可以么
不在构造函函数;
或者float *array_new=new float[3];
不在构造函函数;
或者float *array_new=new float[3];
追问
设成全局当然可以,我现在设的就是全局,但是我想,类里面岂不是不能设数组成员了?
追答
可以的,数组会出问题
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
从你提供的代码看不出有什么问题,你可以调试时在构造函数下断点,确定到底是哪里出错。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询