游戏开发论坛

 找回密码
 立即注册
搜索
查看: 1140|回复: 1

请问DXUT框架里面错误处理的两个宏

[复制链接]

54

主题

116

帖子

122

积分

注册会员

Rank: 2

积分
122
发表于 2007-8-14 14:23:00 | 显示全部楼层 |阅读模式
在DXUT框架里有两个宏V();V_RETURN();请问二者使用的时候有什么规定呢?
我看它们的定义了V_RETURN 有返回,不知道二者到底有什么区别。另外能不能给我解释一下下面的定义呢,谢谢了
#if defined(DEBUG) || defined(_DEBUG)
#ifndef V
#define V(x)         
{
    hr = x;
    if( FAILED(hr) )
   {
      DXUTTrace( __FILE__, (DWORD)__LINE__, hr, L#x, true );
   }
}
#endif
#ifndef V_RETURN
#define V_RETURN(x)  
  {
     hr = x;
     if( FAILED(hr) )
   {
      return DXUTTrace( __FILE__, (DWORD)__LINE__, hr, L#x, true );
   }
  }
#endif
#else
#ifndef V
#define V(x)
{
   hr = x;
}
#endif
#ifndef V_RETURN
#define V_RETURN(x)   
{
   hr = x;
   if( FAILED(hr) )
   {
     return hr;
   }
  }
#endif
#endif

14

主题

345

帖子

376

积分

中级会员

Rank: 3Rank: 3

积分
376
QQ
发表于 2007-8-15 15:03:00 | 显示全部楼层

Re:请问DXUT框架里面错误处理的两个宏

如果V_RETURN的话,执行失败就返回了一个HRESULT,这个语句下面的就没法执行了
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 11:48

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表