|
|
楼主 |
发表于 2013-12-3 20:59:25
|
显示全部楼层
4 ]# ^1 S: i! | ~# v* C# Y, p$ I- U D
OF类型的变量一定要通过MEM_free()进行释放 K3 t7 i0 w+ H- E2 e. x9 O* K+ p
void MEM_free(void *pointer)* f: V/ u+ e: W6 h
0 o x. |8 S4 p. Y5 A7 b" m. C( Q4 e2 k6 l
MEM_alloc()
* W. e n8 H# f7 R( t; Z% ?MEM_crealloc()
5 W; G0 P `! B1 w- MMEM_free()
H* N) c4 e- K2 [/ A' QMEM_realloc()$ t. Z; G4 J; V3 e \
使用以上内存管理函数,也可以使用C内存管理函数) A: t; e" w' t6 c
Include file: <mem.h>
' x5 M3 O0 D* L" {+ |
- t! R) `; z* }# P% R) l8 p7 ?* @& J
函数返回值不为ITK_ok,则有错误发生,必须进行处理
- d4 T ^; ^- c. t) |* h- g6 P& S" YEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)$ {$ N. L* N' i7 x
可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。3 I5 L& t `) A, W
. C0 w* p: q% U5 @% D9 G- }+ b+ h& h% \ T+ l6 w7 Q5 f
5 F' u* u) P( b, q% {6 ?
5 s, d( |& M! T- P8 Y$ x" g
- status = AOM_save( );
- l, t8 @" S8 Y N, ?9 M - if (status != ITK_ok )& d- [: S; B$ A3 l2 T2 D6 ~
- {+ Y, P& ?& }8 P) F: w* Y( E! G
- EMH_ask_error_text(status, &message);$ j0 {* ~* E) a U- ^
- printf("Error with AOM_save: %s\n", message);
- w7 y% Y4 u; k( n" B; d) g, E2 O, H - MEM_free(message);( \7 z0 u6 T! _8 m; r4 J$ q+ E4 [
- return status;8 i) T& Y: ]& M1 q5 n+ @8 D
- }3 ]9 A) o4 I8 q) l$ j: ~8 K$ V
复制代码- status = AOM_save( fl_tag );
( c8 M. w0 |4 y9 z* Y - if (status != ITK_ok )% E! j5 s* m$ P8 m: z( z
- {
' J' {/ T5 V8 v - EMH_ask_errors(&n_errors, &severities, &statuses, &messages);
, s# L. J! t H3 O, @ - for (i = 0; i < n_errors; i++)% z x$ J; S- d* S
- {) s! o, b$ z) } G3 C
- printf( " %6d: %s\n", statuses[i], messages[i] );
! x2 a& i! q$ N - }
2 e1 u( ^. p7 N, H8 w9 v# A - return status;
* b0 e0 f' W( w. A - }
; [& ?/ [/ W5 s Y
复制代码
- J. ?# V+ O- a3 O' V# Y5 t7 d3 E$ Q+ H) f! S) Y
- v% q! |* E* X, I+ x: W
|
|