CMGDK r49-rc2
K:/CMGDKv18/SDK/Include/hgl/type/Queue.H
浏览该文件的文档。
00001 # i f n d e f   H G L _ Q U E U E _ I N C L U D E 
00002  
00003  # d e f i n e   H G L _ Q U E U E _ I N C L U D E 
00004  
00005  
00006  
00007  # i n c l u d e < h g l / t y p e / D a t a T y p e . H > 
00008  
00009  n a m e s p a c e   h g l 
00010  
00011  { 
00012  
00013      / * * 
00014  
00015      *   Q u e u e !jg{|(uNOX[ N*NHQۏHQQ0TۏTQvpencR
00016  
00017      * 
00018  
00019      *   lُ*N{|؏(WKmՋ-N
00020 NO9eُ*N{|vnNxY   gO9ea5u\O0
00021  
00022      * / 
00023  
00024      t e m p l a t e < t y p e n a m e   T >   c l a s s   Q u e u e                                                                                                                                 / / / Rz^penc{|
00025  
00026      { 
00027  
00028      p r o t e c t e d : 
00029  
00030  
00031  
00032          i n t   m a x _ c o u n t ; 
00033  
00034          i n t   m e m _ c o u n t ; 
00035  
00036          i n t   c o u n t ; 
00037  
00038          T   * i t e m s ; 
00039  
00040  
00041  
00042      p r o t e c t e d : 
00043  
00044  
00045  
00046          i n t   G e t C o u n t ( ) { r e t u r n   c o u n t ; } 
00047  
00048  
00049  
00050          i n t   G e t M a x ( ) { r e t u r n   m a x _ c o u n t ; } 
00051  
00052          v o i d   S e t M a x ( i n t ) ; 
00053  
00054          T   G e t I t e m ( i n t   n ) { r e t u r n   ( n < 0 | | n > = c o u n t ) ? N U L L : i t e m s [ n ] ; } 
00055  
00056  
00057  
00058      p u b l i c :   / / ^\'`
00059  
00060  
00061  
00062          P r o p e r t y < i n t >   C o u n t ;                                                                                                                                                 / / / < R-Npencv*Npe
00063  
00064          P r o p e r t y < i n t >   M a x C o u n t ;                                                                                                                                           / / / < R-Nv g'Ypenc*Npe
00065  
00066  
00067  
00068      p u b l i c :   / / el
00069  
00070  
00071  
00072          Q u e u e ( i n t = 0 ) ; 
00073  
00074          v i r t u a l   ~ Q u e u e ( ) ; 
00075  
00076  
00077  
00078          b o o l   P e e k ( T   & ) ; 
00079  
00080          b o o l   P o p ( T   & ) ; 
00081  
00082          b o o l   P u s h ( c o n s t   T   & ) ; 
00083  
00084  
00085  
00086          v o i d   C l e a r ( ) ;                                                                                                                                                               / / / < nd@b gpenc
00087  
00088  
00089  
00090          T   o p e r a t o r [ ] ( i n t   n ) { r e t u r n   G e t I t e m ( n ) ; } 
00091  
00092  
00093  
00094          v i r t u a l   v o i d   o p e r a t o r   = ( c o n s t   Q u e u e < T >   & ) ; 
00095  
00096      } ; / / t e m p l a t e < t y p e n a m e   T >   c l a s s   Q u e u e 
00097  
00098  
00099  
00100      t e m p l a t e < t y p e n a m e   T >   c l a s s   Q u e u e O b j e c t : p u b l i c   Q u e u e < T   * >                                         / / / Xh[a
00101  
00102      { 
00103  
00104      p u b l i c : 
00105  
00106  
00107  
00108          Q u e u e O b j e c t ( i n t   n = 0 ) : Q u e u e < T   * > ( n ) { } ; 
00109  
00110          v i r t u a l   ~ Q u e u e O b j e c t ( ) { C l e a r ( ) ; } ; 
00111  
00112  
00113  
00114          v o i d   C l e a r ( ) ; 
00115  
00116      } ; / / t e m p l a t e < t y p e n a m e   T >   c l a s s   Q u e u e O b j e c t 
00117  
00118  } / / n a m e s p a c e   h g l 
00119  
00120  # i n c l u d e   < h g l / t y p e / Q u e u e . C P P > 
00121  
00122  # e n d i f / / H G L _ Q U E U E _ I N C L U D E 
00123  
00124  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义