1、在继承与派生中,单目:表示派生,双目::表示继承,例如

 class A
 {
 public:
         void c();
 };
 class B: public A
 {};         //类B继承类A

 void A:: c()
 {

 };  //A派生成员函数c

2、获取窗口的指针、句柄以及窗口的指针

 CWnd   *pWnd   =   GetDlgItem(ID_***); // 取得控件的指针
 HWND hwnd = pWnd->GetSafeHwnd();   // 取得控件的句柄
 CDC* pdc = pwnd->GetWindowDC();  //取得CDC的指针

3、CString中的Format()函数的用法:

  CString str;

  int a=3;

  str.Format("%d",a);  //这里表示的是str=“3”,3以字符串的形式传给str。

4、在运行其他的地方复制MFC程序,在修改VC++目录的“包含目录”和“库目录”的路径时候,如果原来已经默认设置继承的值(下图),只需要将包含目录下的路径给删除掉,然后包含目录和库目录(红色矩形方框中)右端的下拉菜单中选择“从父级或项目默认设置继承”,就OK了。

     

5、同名全局变量与局部变量的区别:

  1. 实例一:
  2.  void function()
     {
     ; //在这个局部函数中,x的值1,它是个局部变量
     }
     main()
     {
     ;
     function() ; //执行完function,main函数中,x的值是0,它也是个局部变量
     }
     //在{}中定义的变量全是局部变量,各函数中的同名变量各不相关。打个比方:就是老张家的小三和老李家的小三同名,但各不相干!
  3. 实例二:不处在任何一对{}中的变量,就称之为全局变量,一般我们把这些全局变量定义在文件头。如:
  4.  ;
     void function()
     {
     x=;    //在这个局部函数中,x的值1,而且这个x是全局变量x (因为x在这函数内没有定义,所以它是全局变量)
     }
    
     main()
     {
     ;  //这是个局部变量,全局变量x在这里被隐藏了,你是看不到的。(x在main函数内定义,所以它是局部变量)
     function() ; //执行完function,main函数中的x的值是9,而全局变量x的值是1
     }
     //全局变量遇到同名的局部变量,全局变量在这个函数中暂时消失!只要出了这个函数就会再现 

6、wstring与string的区别:wstring是宽char,Unicode编码,一般情况下一个字符占两个字节大小;string是窄char,AscII编码,一个字符占一个字节大小

7、在单文档MFC程序中,如果仅想添加Dialog对话框,那么直接在资源位图中Dialog中点击鼠标右键,选择”插入Dialog“就行,不必选择”添加资源“,在”添加资源“中给出为属性对话框,而采用DoModal是不能显示指定的对话框

8、当VS2010窗口布局打乱后恢复到默认:窗口->重置窗口布局

9、注意printf与sprintf的区别

  int printf (const char* szFormat,......);  //第一个参数是一个格式字符串,后面是与格式字符串中的代码相对应的不同类型的多个参数

  int sprintf(char* szBuffer, const char* szFormat,.....);//第一个参数是一个字符缓冲区;后面是一个格式字符串。sprintf并不是将格式化结果写到标准输出,而是将其存入szBuffer。该函数返回字符串的长度,在字符模式编程环境中,

  printf("The sum of %i and %i is %i",5,3,5+3);

的功能等同于以下语句:

char szBuffer[100];

  sprintf(szBuffer,"The sum of %i and %i is %i",5,3,5+3);

10、

												

MFC中错误知识总结(一)的更多相关文章

  1. MFC中线程相关知识

    MFC中把线程分为两种类型,UI线程和工作者线程. MFC中启动一个线程的最好方法是调用AfxBeginThread,有两个版本,一个用于启动Ui线程,另外一个用于启动工作者线程.在MFC程序中,只有 ...

  2. js中错误处理的相关知识

    错误bug是指程序执行过程中,导致程序无法正常执行的情况. 后果:程序会强行中断退出:     错误处理:                即使程序出现错误,也保证程序不异常中断的机制. 一般的使用的代 ...

  3. 在VC/MFC中嵌入Google地图——图文并茂

    近期须要实验室须要将在无人机地面站中嵌入地图,在网上找了非常多资料,最终有些眉目了, 首先.做这个须要用到的知识有.MFC控件.MFC类库.JavaScript脚本语言.Google API.Goog ...

  4. MFC中快速应用OpenCV(转)

    转载链接:http://wiki.opencv.org.cn/index.php/MFC%E4%B8%AD%E5%BF%AB%E9%80%9F%E5%BA%94%E7%94%A8OpenCV 简介和缘 ...

  5. MFC中添加OpenGL

    WINDOWS下展示OpenGL有多种形式: MFC 或 win32,该如何向MFC中添加OpenGL?下面是介绍最简单OpenGL框架. 1.首先通过VS建立MFC应用程序-MyOpenGL,选择单 ...

  6. 转:MFC中创建多线程

    MFC中创建多线程   MFC的多线程函数必须声明为静态的或者是全局函数(不同的在于全局函数不能访问类的私有静态成员,而静态类函数可以):但这样的线程函数只能访问静态的成员变量,要实现访问类的其他成员 ...

  7. 多线程编程之二 ---MFC中的多线程开发

    下载源代码 五.MFC对多线程编程的支持 MFC中有两类线程,分别称之为工作者线程和用户界面线程.二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环. 工作者线程没有消 ...

  8. SonicUI在MFC中的使用

    SonicUI是一个GUI引擎,提供了一些简单的UI组件实现高效率的UI效果,例如:自绘按钮.异形窗体.动画.超链接和图像操作方法.此项目作者开源到CodeProject,地址为:http://www ...

  9. MFC 中线程传递CString 是不安全的 转

     MFC 中线程传递CString 是不安全的       在MFC中,向线程传递CString变量参数时,很容易犯一个错误,就是使用一个超出生存期的变量,在主函数中定义的CString变量是局部变量 ...

随机推荐

  1. bzoj 1054 移动玩具

    题目连接 http://www.lydsy.com/JudgeOnline/problem.php?id=1054 移动玩具 Description 在一个4*4的方框内摆放了若干个相同的玩具,某人想 ...

  2. VS中引用第三方库的方法(配置sqlite数据库)

    我们在编写程序时,,不可避免的会使用第三方的库文件,很少使用源文件(.cpp),大部分是使用对类进行声明的头文件和封装了类的链接库(静态lib或动态dll),比如我们写程序用的iostream这个库, ...

  3. pxe+preseed安装配置

    Ubuntu Server 部署手册 pxe+tftp+vsftp+apache2 ========================================================== ...

  4. C#制作高仿360安全卫士窗体<一>

    开始写这一系列博客之前先要向大家说声抱歉,放肆雷特建立很久却很少有更新.当然博客人气也不旺,大部分都是看的人多评论收藏的人少.一直想要改变这种状态,正好赶上了最近工作上做了一个高仿360安全卫士窗体. ...

  5. Linux 下开放指定端口

    安装tomcat后,在客户端输入地址  http://localhost:8080/ ,发现默认端口8080不能访问. 由于Linux防火墙默认是关闭8080端口.因此,若要能够访问8080端口,可以 ...

  6. android 实现2张图片层叠效果

    如图: 代码: <RelativeLayout android:layout_width="match_parent" android:layout_height=" ...

  7. Codeforces Round #350 (Div. 2) E. Correct Bracket Sequence Editor 模拟

    题目链接: http://codeforces.com/contest/670/problem/E 题解: 用STL的list和stack模拟的,没想到跑的还挺快. 代码: #include<i ...

  8. Windows下配置使用MemCached

    工具: memcached-1.2.6-win32-bin.zip     MemCached服务端程序(for win) Memcached Manager             win下的Mem ...

  9. 堆(heap)和栈(stack)的区别

    转: 一.预备知识―程序的内存分配 一个由c/C++编译的程序占用的内存分为以下几个部分 1.栈区(stack)― 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等.其操作方式类似于数据结构中 ...

  10. Linq to Xml示例

    Xml文件: <?xml version="1.0"?> <Software xmlns:xsi="http://www.w3.org/2001/XML ...