MFC中的IDD是什么意思

 我来答
dong_1984dd
推荐于2017-09-21 · TA获得超过1.1万个赞
知道小有建树答主
回答量:1070
采纳率:100%
帮助的人:228万
展开全部
  1. IDD,是对话框资源编号的默认开头:IDD_DIALOG1,其中IDD表示Identify Dialog的意思

  2. 这与 C++ 的 常数 表示 有关, 早期 的MFC 是 使用 enum { IDD = IDD_DIALOG1 };
    来 表示 常数 即 const (-ant), 那时 使用 const IDD = IDD_DIALOG1 会有问题。

  3. 这是为了好写对话框的架构. 因为不同的对话框可以使用相同的类, 不同的对话框资源.
    而不同的资源又要是相同的代码.
    enum { IDD = IDD_DIALOG1 }这个就能起作用了.

    只要基类代码中使用IDD就能得到对话框资源的ID号,而不用写其它的代码要设置.

    如果你删除掉这句, 你就可以看到使用IDD的原因了.

    你要定义成变量的话, 你就需要自己修改代码了.
    : CDialog(CTestDlg::IDD, pParent)  //基类构造函数的调用需要修改.

    IDD是变量的话, 就需要调用这个基类构造前赋值, 并且修改成不要CTestDlg:: 

    类似于这样:
    CTestDlg::CTestDlg(CWnd* pParent /*=NULL*/)
    :IDD(IDD_TEST_DIALOG) //变量初始化
    , CDialog(IDD, pParent) //构造函数 个人感觉使用常数在效率上会好 点,因为常熟是包含在指令中,变量要获得值需要进行内存访问

砍侃看
推荐于2017-09-04 · TA获得超过6153个赞
知道大有可为答主
回答量:6584
采纳率:69%
帮助的人:2091万
展开全部
ID你应该知道吧,和我们平时说的ID是一个意思,后面那个D指的是Dialog,即是对话框,IDD一般用来作为对话框窗体变量名的头,使人一看就知道操作的对象是对话框。像图标是IDI,位图是IDB等等
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式