|
|
楼主 |
发表于 2013-12-3 20:59:25
|
显示全部楼层
* F4 W5 {0 e- p1 y1 a; H
/ C1 f$ D8 `7 N; V6 K1 ~
OF类型的变量一定要通过MEM_free()进行释放, b& X6 U9 r. E" g) ^- u
void MEM_free(void *pointer)
7 k/ ~( k* d+ x: s8 e* v
0 G9 a* n/ I; U( u, m* y. T8 i% J. Z
MEM_alloc()1 u( |& d% b" ^& ^; l- }
MEM_crealloc()
1 z& t( c r# d- s# s8 SMEM_free()
6 n2 a& L) Q& h* bMEM_realloc()
0 v! u+ h+ o; E6 y使用以上内存管理函数,也可以使用C内存管理函数. g7 S; {- t r! T1 W3 X
Include file: <mem.h>
6 `8 y- x! Y/ |3 {* }4 A
. h5 j7 A o7 a" r6 O. y8 q- O* e E2 [5 X/ }" Z2 ?, F: a8 s
函数返回值不为ITK_ok,则有错误发生,必须进行处理
( L3 i: a2 E c5 u+ A+ @5 mEMH_ask_error_text() 和 EMH_ask_errors()通常用来获得错误信息(参考%IMAN_ROOT%\include\emh.h)# C& M( |. Z* \
可以自定义错误信息编号,可用的自定义错误代号范围919000~919999。
: u) B( K4 c: |. q* `! b( N# Z2 `0 ?* D
7 I9 X% O* W- G7 y: a$ q- h) t/ {$ Y8 N; ^! R( p
% \/ a. q) d! M1 U- status = AOM_save( );
) s8 T: R% j$ C7 @' B; j0 n/ [' `$ X - if (status != ITK_ok )
; k! x" Z: @! r - {& ?0 N' d6 C* e' ?: I: t
- EMH_ask_error_text(status, &message);
+ f8 g w* x7 I1 e5 Q- E4 T) r - printf("Error with AOM_save: %s\n", message);+ k3 p0 m. ?( \) a9 r X6 ?
- MEM_free(message);
& ]! I) h/ J9 X+ } - return status;
+ t9 d- d, E# a5 c& r - }! ?# d- R" C. z) `
复制代码- status = AOM_save( fl_tag );
" H6 z1 y' O4 q8 ~ - if (status != ITK_ok )! e5 j0 u+ c4 W3 k9 G4 x# n/ d
- {5 i- D! t) C* s$ J1 V' r
- EMH_ask_errors(&n_errors, &severities, &statuses, &messages);: \- U0 Z% U8 B$ b' W9 ~. q
- for (i = 0; i < n_errors; i++)
% W. b6 `: L: {) |$ {5 J - {% N* A3 F) H# U: R- c
- printf( " %6d: %s\n", statuses[i], messages[i] );( N) p- j2 I/ _( `# ~4 l5 p& e
- }
3 \0 H" ~9 N; U/ x% | - return status;/ J% o4 I3 _( ~1 S& U
- }7 v) Y" X8 ?, ~- J+ Y7 R' j, y) M
复制代码
! X& S) c( e0 q& j
( M/ U9 T4 a! S! }3 n4 ~! _
& s" y. C% L" ` T$ H( ~ |
|