【转载】特殊宏://{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT
原文:http://yyguangzheng.blog.163.com/blog/static/603488402014102215153610/
说明:这篇日志我不知道怎么命名好,虽然内容很少,但是讲的关键字很多,如果你有幸打开这篇日志,不妨往下看看
背景:我们使用 VC++6.0 开发MFC应用程序,初学者一定会为那么多行的注释代码感到头痛,下面就说说这些有益无意义的注释
//{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT 我们看到很多这样打头的代码,其中典型的一个,在你应用程序的 CApp 头文件中
// Implementation
//{{AFX_MSG(CHelloMFCApp)
afx_msg void OnAppAbout();
// NOTE - the ClassWizard will add and remove member functions here.
// DO NOT EDIT what you see in these blocks of generated code !
//}}AFX_MSG
刚开始始终不知道注释干嘛的,后来看见中间的语句 afx_msg void OnAppAbout(); 其中的 afx_msg ,我查阅一些说明:
在afxwin.h中找到一些afx_msg的解释:
#ifndef afx_msg
#define afx_msg // intentional placeholder
#endif
intentional placeholder 故意的占位符,你可以翻译成有计划策略的占位符,总之就是一个没有实际意义的占位符,看定义就知道,没有起到什么作用,因为 #define 没有给他赋什么值。
这个对编译器来说,相当于什么都没有;
对于人来说,我们可以看到这样的符号;
对于类向导来说.这个符号才是有意义的.它是一个消息处理函数的前缀.类向导生成的消息函数,分发函数,事件响应函数都以这个为前缀.如果去掉了,向导将不能识别。
afx_msg目前只是一个占位符,今后微软可能会赋予它确实的意义,来自MFC AFXWIN.H文件。
于是对比//{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT,得知这些有规律的注释是类向导自动生成的格式,用于识别具体的函数,以及他们的分类、位置,不能人为的随意更改,不然会导致类向导无法正确识别。
当然,如果你是纯手打代码,不适用IDE工作,那你删除这些代码倒也是不介意。前提是,你的层次已经到了那个程度。
转载于:https://www.cnblogs.com/zhehan54/p/4567811.html
【转载】特殊宏://{{AFX_MSG、//{{AFX_VIRTUAL、//{{AFX_MSG_MAP、//{{AFX_DATA_INIT相关推荐
- 转载 banq---阎宏之间的恩怨
我和banq之间的恩怨直到今日,让我感叹. 我们之间最早的摩擦开始于他的一篇关于Abstract Factory的网上文章,中间放了一张我在yesky.com的插图.他本人以免费刊载的方式鼓励转载,因 ...
- [转载]SYSCALL_DEFINE宏定义
来源:http://blog.csdn.net/p_panyuch/article/details/5648007 SYSCALL_DEFINE3 在何处定义? #define SYSCALL_DEF ...
- AFX_VIRTUAL
//{{AFX_VIRTUAL./{{AFX_MSG.//{{AFX_MSG_MAP.//{{AFX_DATA_INIT 我们看到很多这样打头的代码,其中典型的一个,在你应用程序的 CApp 头文件中 ...
- 宏基因组扩增子1图表解读-理解文章思路,零基础测序分析图表解读大全(箱线,散点,热,曼哈顿,火山,韦恩,三元,网络),老板再也不愁我的文献阅读了!
本网内容转载自"宏基因组"公众号,更佳阅读体验.更多相关文章,欢迎点我跳转至公众号. 写在前面 (Introduction) 很多刚接触高通量测序数据分析文章的学生,感觉图表丰富多 ...
- 微生物组入门必读+宏基因组实操课程=新老司机赶快上车
声明:本文转载自宏基因组公众号,原作者朱微金,己获作者授权. 写在前面 作为纯wet遗传学博士,转行微生物组领域已经有两年.目睹微生物组文章中分析所占比重之大,让我痛下决心苦学dry技能.目前感觉对宏 ...
- AFX_MSG是什么意思
以前一直不知道AFX_MSG是什么意思,只是觉得它应该是个消息映射函数,但是具体代表什么意思,会返回一个什么样的值是一点都不清楚,今天查了下资料,把查到的东西放这,以免以后忘了还得再查. 在头文件(D ...
- 孙鑫-MFC笔记三--绘图
一. 消息映射机制 在左边View类处点右键,在出现的菜单里点击"Add Windows Message Handler",在出现的对话框里选择"WM_LBUTTONDO ...
- C++小知识——VS2013 MFC基于对话框编程
转载自:https://blog.csdn.net/wokaowokaowokao12345/article/details/53173966 前言 一直利用Qt库做Ui设计,但针对于一些MFC项目, ...
- 扫雷游戏的实现C++
扫雷游戏是Windows操作系统自带的一个小游戏,几乎每个电脑使用者都接触过它.它同时也是一款比较经典的小游戏,实现它的方法很多,也可以用不同算法和语言实现.近期用了两个周末(各一天)和大半个月的空余 ...
- 详解DC、CDC、HDC、句柄、设备上下文
最近那么长时间都没写博文.感觉经常写博文是好事.工作的时候项目是用MFC做的.百度了下说这个框架已经过时了.但是工作需要又不得不看,所以现在就之前看的一篇关于设备上下文的文章转载下 MFC中的DC.C ...
最新文章
- 爱说说技术原理方案的定选思考过程(一)
- JEECMS V3.0 常用标签使用说明
- extjs用iframe的问题
- Android IOS WebRTC 音视频开发总结(七九)-- WebRTC选择H.264的四大理由
- 【转载】大叔推荐博客索引
- git merge用法_常用命令之git操作(进阶篇)
- Spring Boot 单例模式中依赖注入问题
- Linux/Windows/MacOS各个操作系统下推荐应用集合
- 沉睡两三年,醒来又一春
- AI考拉技术分享会--IDE 常用功能 for Node.js
- restframework之节流
- ff14服务器延迟滑步,ff14滑步是什么意思
- 动态加载Web Service
- 最性感的肩膀纹身设计女装 - 5令人惊叹的设计,你会爱!
- Hypervisor
- Python相似度计算【大总结】
- Win10企业版系统安装 NET Framework 4.8的时候提示错误信息
- hevc_nvenc 详细分析2 ——preset分析
- FICO 发票校验时修改统驭科目
- 某广告SDK流量加解密-请求
热门文章
- 语义分割未来发展如何?
- 强烈推荐!FlyAI机器学习数据竞赛启动,丰厚奖金等你来拿
- 想转行,是要入坑Python还是Java?这问题还用问?
- 人工智能相关领域的国际顶会介绍
- java 5 线程 睡眠,Java并发编程实例--5.线程睡眠
- 结合图拉普拉斯的半监督学习
- modelsim和matlab联合仿真,Modelsim与Matlab联合仿真
- 计算机考研408试题及答案,2015年计算机专业408考研试题及答案
- Linux get cpu number,Linux上获取CPU Core个数的实现
- oracle 源代码输出,oracle-如何将DBMS_OUTPUT.PUT_LINE的输出重定向到文件?