设为首页 加入收藏

TOP

变量/对象合法性检查
2014-11-23 20:16:22 来源: 作者: 【 】 浏览:5
Tags:变量 对象 合法性 检查

  在VC中检查变量合法性一般利用ASSERT(x)宏,ASSERT的作用在于检查表达式是否为假或为NULL,如果为假则会引发异常。在MFC中ASSERT宏被大量使用,例如:

     BOOL CWnd::Attach(HWND hWndNew)
    
     {
    
           ASSERT(m_hWnd == NULL);       // only attach once, detach on
    
             destroy
    
           // …
    
 
    
           return TRUE;
    
     }
    
 
    
     void CString::AllocBuffer(int nLen)
    
     {
    
           ASSERT(nLen >= 0);
    
           ASSERT(nLen <= INT_MAX-1);    // 
    
     }
    
 
    
     void CDocument::AddView(CView* pView)
    
     {
    
           // other code…
    
           ASSERT(pView->m_pDocument == NULL); 
    
           ASSERT(m_viewList.Find(pView, NULL) == NULL);  
    
     }
    

  当ASSERT失败并引发异常时会有对话框谈出并报告发生该ASSERT失败位置。报错信息如:assertion failed in file in line <__LINE__>。

aspectratio="t"> vc/images/10816/sp_teach_321.gif" src="./0011.files/image001.gif">

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇获得WebBrowser控件中的HTML源码 下一篇内存泄露检查

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: