admin 发表于 2013-9-23 22:24:12

UG二次开发模板(1)技巧规则

技巧规则1,内存原则: 【规则1】用malloc或new申请内存之后,应该立即检查指针值是否为NULL。防止使用指针值为NULL的内存。【规则2】不要忘记为数组和动态内存赋初值。防止将未被初始化的内存作为右值使用。【规则3】避免数组或指针的下标越界,特别要当心发生“多1”或者“少1”操作。【规则4】动态内存的申请与释放必须配对,防止内存泄漏。【规则5】用free或delete释放了内存之后,立即将指针设置为NULL,防止产生“野指针”。 2,数组要么在静态存储区被创建(如全局数组),要么在栈上被创建。数组名对应着(而不是指向)一块内存,其地址与容量在生命期内保持不变,只有数组的内容可以改变。指针可以随时指向任意类型的内存块,它的特征是“可变”,所以我们常用指针来操作动态内存。指针远比数组灵活,但也更危险。注意当数组作为函数的参数进行传递时,该数组自动退化为同类型的指针。 new/delete的功能完全覆盖了malloc/free,为什么C++不把malloc/free淘汰出局呢?这是因为C++程序经常要调用C函数,而C程序只能用malloc/free管理动态内存。 2,分配空间double (*point);point = new double; delete[]point;//正确的用法 /*delete point;//错误的用法=delete point*/ 3, UF_MODL_update();//使用UF_MODL_edit时用来刷新 4   UF_UI_ONT_refresh();//刷新导航器头文件#include <uf_ui_ont.h> UF_DISP_refresh();//去除临时文件#include < uf_disp.h>

5 调试工具 1)uc1601 //显示消息对话框 头文件:#include <uf_ui.h> 用法1:      char inf;       sprintf(inf, "%f",);       uc1601(inf,1);用法2:uc1601("",1); 2)UF_UI_write_listing_window//显示文本框头文件:#include <uf_ui.h> char inf;       UF_UI_open_listing_window();       sprintf(inf, "%", );       UF_UI_write_listing_window(inf); 6,隐藏中间过程#include< uf_disp.h>UF_DISP_set_display(UF_DISP_SUPPRESS_DISPLAY);//打开隐藏 UF_DISP_set_display(UF_DISP_UNSUPPRESS_DISPLAY); //关闭隐藏

简简单单 发表于 2013-10-13 23:47:17

谢谢,这是好东西:)

潜行者 发表于 2013-11-28 15:39:09

我来看看,好东西
页: [1]
查看完整版本: UG二次开发模板(1)技巧规则