PLM之家PLMHome-工业软件与AI结合践行者

[资料] UF_CALL(X) (report( __FILE__, __LINE__, #X, (X)))的使用技巧

[复制链接]

2014-3-11 16:20:30 4252 0

admin 发表于 2014-3-11 16:20:30 |阅读模式

admin 楼主

2014-3-11 16:20:30

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
在程序开头,创建如下的基于report函数的宏:
0 b0 M" b  K& i #define UF_CALL(X) (report( __FILE__, __LINE__, #X, (X)))9 A2 t/ b, E# k2 B  c& j
只要把原UF函数原封不动地作为UF_CALL宏的参数,UF出错时就能自动实现错误捕捉\错误信息的转换\输出.如:/ t0 L4 S7 V& g& g8 \- W4 R
UF_CALL(UF_ASSEM_set_work_part(Part_Tag));
; h8 U. b# C2 R9 A/ OUF_CALL(UF_STYLER_ask_value(dialog_ID,&Data));5 m8 u8 e+ t8 a' s! l/ d; e  E/ ^
内部UF程序一旦出错,轻者引发UG警告终止当前程序,重者直接使UG挂起,因此依靠UG系统的警告并不能完全指出程序的错误。而外部UF运行时出错则直接回到操作系统控制下,系统给出的警告信息就更笼统了。考虑到这一点,调用所有含参数的内部UF时,都应该使用UF_CALL。只是对于无输入参数的UF函数或返回值不是整型的UF函数使用UF_CALL会使宏代换出错,如:6 c0 S2 p! d& y2 ]* k' T! s
UF_CALL(UF_PART_save_()) /* 错误 */1 {$ e/ n" E  p9 z' Z0 i
使用UF_CALL宏只是为调试除错服务的,正式程序中应该把它去掉,以获得更好的运行性能。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 注册

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了