为了账号安全,请及时绑定邮箱和手机立即绑定

如下情况,不知道如何才能使用_Editor003了?

如下情况,不知道如何才能使用_Editor003了?

守着星空守着你 2022-06-16 13:09:32
创建了一个工程 在对话框类Dlg中 定义了一个文本框 文本框的指针是_Editor003。我想在命令类Cmd中使用_Editor003.请问应该怎样做 我直接使用_Editor003提示我未定义 我感觉可能是_Editor003不是Cmd的成员。我在Cmd中建立了一个对话框类的指针MyCreateCylinderDlg * _pCylinderDlg; 
查看完整描述

2 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

至少两个比较简单合理的方法:

  1. _Editor003作为Dlg的成员变量

    通过获取Dlg指针去引用Dlg->_Editor003

  2. 获取Dlg指针,使用Dlg->GetDlgItem(IDC_TEXT)获取,其中IDC_TEXT是文本框的资源ID

  3. 作为更合理的方法,给Dlg增加成员函数,返回_Editor003的指针


查看完整回答
反对 回复 2022-06-20
?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

传递类的成员函数的指针必须同时传递能够调用该成员函数的对象,因为除了类的静态成员函数,只有类的对象才能调用其成员函数。
*/
void fun2(double a,double b,T a1,void(T::*fun)(double,double))
{
(a1.*fun)(a,b);
}
};
class C{
public:
void fun3(double a,double b)
{
cout<<a*b<<endl;
}
};
void main()
{
A a;
B b;
C c;
/*
&A::fun1传递一个类的成员函数指针的方式。
*/
b.fun2(10,19,a,&A::fun1);
b.fun2(10,19,c,&C::fun3 );
}


查看完整回答
反对 回复 2022-06-20
  • 2 回答
  • 0 关注
  • 163 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号