首页 VC++深入详解视频勘误和说明

VC++深入详解视频勘误和说明

举报
开通vip

VC++深入详解视频勘误和说明1、在光盘 VC16 的 Lesson16Code 中,Chat 的函数代码, OnSock 函数忘记释放内存了,可以在出错判断的地方以及将要返回的地方加释放内存的语句 ( delete[] wsabuf 一、在视频Lesson2中,在介绍构造函数时,我说:“构造函数最重要的作用是创建对象本身,对象内存的分配由构造函数来完成的”,这句话是错的,对象内存的分配和构造函数没有关系,对象内存的分配是由编译器来完成的,构造函数的作用是对对象本身做初始化工作,也就是给用户提供初始化类中成员变量的一种方式,在类对象有虚表的情况...

VC++深入详解视频勘误和说明
1、在光盘 VC16 的 Lesson16Code 中,Chat 的函数代码, OnSock 函数忘记释放内存了,可以在出错判断的地方以及将要返回的地方加释放内存的语句 ( delete[] wsabuf 一、在视频Lesson2中,在介绍构造函数时,我说:“构造函数最重要的作用是创建对象本身,对象内存的分配由构造函数来完成的”,这句话是错的,对象内存的分配和构造函数没有关系,对象内存的分配是由编译器来完成的,构造函数的作用是对对象本身做初始化工作,也就是给用户提供初始化类中成员变量的一种方式,在类对象有虚 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 的情况下,构造函数还对虚表进行初始化。 另外,我说:“C++又规定,如果一个类没有提供任何的构造函数,则C++提供一个默认的构造函数(由C++编译器提供)”,这句话也是错误的,正确的是: 如果一个类中没有定义任何的构造函数,那么编译器只有在以下三种情况,才会提供默认的构造函数: 1、如果类有虚拟成员函数或者虚拟继承父类(即有虚拟基类)时; 2、如果类的基类有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数); 3、在类中的所有非静态的对象数据成员,它们对应的类中有构造函数(可以是用户定义的构造函数,或编译器提供的默认构造函数)。 二、在视频 Lesson4 的Code 中,画扇形用如下代码即可: if(m_bDraw == TRUE) {   dc.MoveTo(m_ptOrigin);   dc.LineTo(point); } 带边线的扇形用如下代码即可: if(m_bDraw == TRUE) {   dc.MoveTo(m_ptOrigin);   dc.LineTo(point);   dc.LineTo(m_ptOld);   m_ptOld = point; } 三、在视频Lesson8中,关于在对话框上放置组合框的问题,我说“如果拖动的矩形较小,组合框的列表框部分将无法显示,此时也无法调整组合框的上下位置的大小了”。实际上,组合框的上下位置还是可以调整的,调整的办法如下: 在对话框资源处于编辑状态时,将鼠标移动到组合框控件右边向下的箭头上,当鼠标变成上下箭头形状时,单击鼠标左键,此时可以看到举行框围绕着组合框。将鼠标移动到该矩形框下端的蓝色小方块上,当鼠标变成上下箭头形状时,按住鼠标左键向下拖动,直到把组合框的下拉列表框范围拖动到合适的大小时松开鼠标左键。 四、在视频Lesson16的事件代码中,有一个问题,修改如下: void main() { HANDLE hThread1; HANDLE hThread2; g_hEvent=CreateEvent(NULL,FALSE,FALSE,NULL); //将CreateEvent()函数放置在这个位置 hThread1=CreateThread(NULL,0,Fun1Proc,NULL,0,NULL); hThread2=CreateThread(NULL,0,Fun2Proc,NULL,0,NULL); CloseHandle(hThread1); CloseHandle(hThread2); //g_hEvent=CreateEvent(NULL,FALSE,FALSE,NULL);//取消这个位置的CreateEvent()函数。 /*g_hEvent=CreateEvent(NULL,FALSE,FALSE,"tickets"); if(g_hEvent) {   if(ERROR_ALREADY_EXISTS==GetLastError())   {    cout<<"only instance can run!"<0)   {    Sleep(1);    cout<<"thread1 sell ticket : "< word word文档格式规范word作业纸小票打印word模板word简历模板免费word简历 WINAPI Fun1Proc(    LPVOID lpParameter   // thread data ) { while(TRUE) {   WaitForSingleObject(g_hEvent,INFINITE); //  ResetEvent(g_hEvent);   if(tickets>0)   {    Sleep(1);    cout<<"thread1 sell ticket : "<0)   {    Sleep(1);    cout<<"thread2 sell ticket : "<0)   {    Sleep(1);    cout<<"thread1 sell ticket : "<0)   {    Sleep(1);    cout<<"thread1 sell ticket : "<0)   {    Sleep(1);    cout<<"thread2 sell ticket : "<h_name,wsabuf.buf);   str+="\r\n";   GetDlgItemText(IDC_EDIT_RECV,strTemp);   str+=strTemp;   SetDlgItemText(IDC_EDIT_RECV,str);   delete[] wsabuf.buf; // 这里加一句释放内存的语句   break; } } 八、在视频Lesson17的剪贴板编程的代码中,有一个问题,修改如下: if(OpenClipboard()) {   if(IsClipboardFormatAvailable(CF_TEXT))   {    HANDLE hClip;    char *pBuf;    hClip = GetClipboardData(CF_TEXT);    pBuf = (char *)GlobalLock(hClip);    GlobalUnlock(hClip);    SetDlgItemText(IDC_EDIT_RECV, pBuf);    //CloseClipboard();//去掉这一句。错误原因:如果程序没有进入第二个if语句, 那么剪贴板不会关闭。   }    CloseClipboard();//在这里添加关闭剪贴板的操作。 } 九、在视频Lesson18中,在OnIntervalChanged()函数中的代码逻辑上有一些问题,原先的代码如下: void CClockCtrl::OnIntervalChanged() { // TOD Add notification handler code if(m_interval<0 || m_interval>6000) {   m_interval=1000; } else {   m_interval=m_interval/1000*1000;   KillTimer(1);   SetTimer(1,m_interval,NULL);   BoundPropertyChanged(0x1); } SetModifiedFlag(); } 应该改为: void CClockCtrl::OnIntervalChanged() { // TOD Add notification handler code if(m_interval<0 || m_interval>6000) {   m_interval=1000; } else {   m_interval=m_interval/1000*1000; } KillTimer(1); SetTimer(1,m_interval,NULL); BoundPropertyChanged(0x1); SetModifiedFlag(); } 十、在视频Lesson2中,关于函数覆盖的讲解是不正确的,正确的请参看《VC++深入详解》一书的2.2.8小节。 如果您发现书中或视频中有任何的错误,请到http://www.sunxin.org/bbs/上提交错误信息。
本文档为【VC++深入详解视频勘误和说明】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_549192
暂无简介~
格式:doc
大小:41KB
软件:Word
页数:10
分类:工学
上传时间:2010-09-30
浏览量:18