关于VC++中virtual ~的含义

我知道virtual 的虚函数定义,~CMainFrame( )是析构函数,用来释放内存。C++的继承和派生内容。所有可以被用作基类的类一般都用虚析构函数当基类对象的指针或引用调用派生类对象时,如果基类的析构函数不是虚析构函数,则通过基类指针或引用对派生类的析构是不彻底的!会造成内存泄露!
时间: 2024-10-09 07:23:52

关于VC++中virtual ~的含义的相关文章

深度解析VC中的消息(转发)

http://blog.csdn.net/chenlycly/article/details/7586067 这篇转发的文章总结的比较好,但是没有告诉我为什么ON_MESSAGE的返回值必须是LRESULT 摘要: Windows编程和Dos编程,一个很大的区别就是,windows编程是事件驱动,消息传递的.所以,要做好windows编程,必须对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的论述,由于小生初学VC,里面可能有一些错误的地方,还往各位大虾批评.指正. 注意:有些消息

VC++中开发汇编语言(转)

汇编程序结构 一个显示字符串的汇编程序 程序格式 一.模式定义 二.includelib语句 三.函数声明语句 四.数据和代码部分 Visual C/C++环境 建立工程 汇编程序的调试 一.设置断点 二.内存窗口 三.寄存器窗口 四.监视窗口 常用调试命令 字符串输入.输出 printf sprintf scanf 常用Windows API调用 MessageBox 确定函数的声明语句和库文件 读取CPU标识 WinDbg调试工具 实验题:用MessageBox函数显示CPU信息 源自:ht

深度解析VC中的消息传递机制

摘要:Windows编程和Dos编程,一个很大的区别就是,Windows编程是事件驱动,消息传递的.所以,要学好Windows编程,必须 对消息机制有一个清楚的认识,本文希望能够对消息的传递做一个全面的分析. 一.什么是消息? 消息系统对于一个win32程序来说十分重要,它是一个程序运行的动力源泉.一个消息,是系统定义的一个32位的值,他唯一的定 义了一个事件,向Windows发出一个通知,告诉应用程序某个事情发生了.例如,单击鼠标.改变窗口尺寸.按下键盘上的一个键 都会使Windows发送一个

VC++ 中ADO数据库的配置(Access2003-Access2007)

vc++ 中ADO数据库的配置(Access2003-Access2007) 1.       首先在StdAfx.h中添加以下代码引入数据库: #import "C:\\Program Files\\Common Files\\System\\ado\\msado15.dll" no_namespace rename("EOF","adoEOF")rename("BOF","adoBOF") 2.    

【转】VC中MessageBox与AfxMessageBox用法与区别

一.MessageBox()用法 1.函数原型 Messagebox函数在Win32 API和MFC里的定义有区别. Win32 API的定义如下: [cpp] view plaincopy int WINAPI MessageBox( HWND hWnd,          // handle of owner window LPCTSTR lpText,     // address of text in message box LPCTSTR lpCaption, // address o

在vc中实现获取汉字拼音的首字母

在vc中实现获取汉字拼音的首字母 void GetFirstLetter(CString strName, CString& strFirstLetter){    TBYTE ucHigh, ucLow;    int  nCode;    CString strRet;    strFirstLetter.Empty();    for (int i=0; i<strName.GetLength(); i++)    {        if ( (TBYTE)strName[i] <

浅谈VC++中预编译的头文件放那里的问题分析

用C++写程序,肯定要用预编译头文件,就是那个stdafx.h.不过我一直以为只要在.cpp文件中包含stdafx.h 就使用了预编译头文件,其实不对.在VC++中,预编译头文件是指放到stdafx.h中的头文件才会有效果.如下: file: stdafx.h // stdafx.h : include file for standard system include files, // or project specific include files that are used freque

【转】Linux中的EAGAIN含义

在Linux环境下开发经常会碰到很多错误(设置errno),其中EAGAIN是其中比较常见的一个错误(比如用在非阻塞操作中). 从字面上来看,是提示再试一次.这个错误经常出现在当应用程序进行一些非阻塞(non-blocking)操作(对文件或socket)的时候.例如,以 O_NONBLOCK的标志打开文件/socket/FIFO,如果你连续做read操作而没有数据可读,此时程序不会阻塞起来等待数据准备就绪返回,read函数会返回一个错误EAGAIN,提示你的应用程序现在没有数据可读请稍后再试.

请说明Java中字符&#39;\&#39;的含义,有什么作用?

/* * 2. 请说明Java中字符'\'的含义,有什么作用? * * 回答: * 在java中反斜杠'\'代表的含义是转义字符,是一个标记 * * 当编译器读到这个标记的时候,它就知道下一个字符不是普通的字符,而是被转译的字符 * 它会依据转义字符的含义做操作,而不是直接的使用原字符. * *当遇到一些java语法中被占用的特殊字符的时候,要想原样的输出,就需要在这些特殊的字符前面加入反斜杠 *比如反斜杠本身,单引号,双引号,小括号等,因为语法已经占用,所以要想原样的输出,只有在前面在加一个反