请问在MFC里经常有"//{{ //}}"的符号代如:
//{{AFX_VIRTUAL(CMy2View)
public:
virtual void OnDraw(CDC* pDC);
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
它的作用是什么?
//{{AFX_VIRTUAL(CMy2View)
public:
virtual void OnDraw(CDC* pDC);
virtual BOOL PreCreateWindow(CREATESTRUCT& cs);
protected:
virtual BOOL OnPreparePrinting(CPrintInfo* pInfo);
virtual void OnBeginPrinting(CDC* pDC, CPrintInfo* pInfo);
virtual void OnEndPrinting(CDC* pDC, CPrintInfo* pInfo);
//}}AFX_VIRTUAL
它的作用是什么?
解决方案 »
- 如何实现实时的数据采集与储存数据
- 一个巨艰难的问题,搞懂了你就高手了,真的
- 最后50分扔出来请发家帮忙解决一个棘手的问题(在线等)
- 一个构造函数的问题
- 请问,哪有类似Microsoft Visio Trial的画程序流程图工具下载?
- ●●●●●●●●●●急急急急急急急急急急急急●●●●●●●●●●UP有分,分不够可再加
- 怎样杀掉一个进程?给个例子源码!THX!!!
- 一个关于CPtrlist使用中的疑难问题,100分,在线等,解决后立刻散分!
- 请问如何获得CBitmap中一个指定点的颜色?
- 数据始终多读了一个
- 在CListCtrl控件上右键弹出菜单时,点击菜单选项为什么不能触发菜单事件?
- 请问WINPCAP能实现端口和IP过滤吗?如果不能,实现这样的功能用什么最好?
A:
对编译器而言,它是注释;
对VC这个IDE而言,它不是注释。而是创建ClassWizard的消息映射所需的。
/////////////////////////////////////////////////////////////////////////////
// Message table implementationBEGIN_MESSAGE_MAP(CWnd, CCmdTarget)
ON_MESSAGE(WM_CTLCOLORSTATIC, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLOREDIT, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLORBTN, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLORLISTBOX, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLORDLG, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLORMSGBOX, OnNTCtlColor)
ON_MESSAGE(WM_CTLCOLORSCROLLBAR, OnNTCtlColor)
//{{AFX_MSG_MAP(CWnd)
ON_WM_DRAWITEM()
ON_WM_MEASUREITEM()
ON_WM_CTLCOLOR()
ON_WM_COMPAREITEM()
ON_WM_ENTERIDLE()
ON_WM_HSCROLL()
ON_WM_VSCROLL()
ON_WM_DELETEITEM()
ON_WM_CHARTOITEM()
ON_WM_VKEYTOITEM()
ON_WM_NCDESTROY()
ON_WM_PARENTNOTIFY()
ON_WM_SYSCOLORCHANGE()
ON_WM_DEVMODECHANGE()
ON_WM_HELPINFO()
ON_WM_SETTINGCHANGE()
//}}AFX_MSG_MAP
#ifndef _AFX_NO_OCC_SUPPORT
ON_WM_DESTROY()
#endif
ON_MESSAGE(WM_ACTIVATETOPLEVEL, OnActivateTopLevel)
ON_MESSAGE(WM_DISPLAYCHANGE, OnDisplayChange)
ON_REGISTERED_MESSAGE(CWnd::m_nMsgDragList, OnDragList)
END_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////
// Routines for fast search of message maps
你确定吗?
偶还是觉得编译器不会管它的,这只是IDE所作的标记,对某些向导自动生成代码有用。
而对编译器来讲,它和一般的注释没有什么区别。
可能你说的编译器跟偶说的不是一个概念吧,偶这里特指VC的cl.exe,不是msdev.exe。
我只是有这样个印象,不能确认。不过至少它们扩起来的是MFC的消息控制,这个没问题:)
这叫注释宏。有用的。不是注释
//}} 和 //{{ 都不会被编译的,
谈们的唯一作用,就是告诉IDE,被 //{{和 //}}包围的内容是特殊的MFC影射,需要类向导解析。
这只是IDE为了智能化而设置的标志。如果删除那些注释,编译、运行不会有任何问题,但是类向导中却一无所有