📄 initializer.h
字号:
//////////////////////////////////////////////////////////////////////////// Copyright (c) 2000, Yusuke Miyao/// You may distribute under the terms of the Artistic License.////// <id>$Id: Initializer.h,v 1.2 2003/05/11 18:12:09 yusuke Exp $/// <collection>Maximum Entropy Estimator</collection>/// <name>Initializer.h</name>/// <overview>Automatic initializer</overview>/// <desc>/// </desc>/////////////////////////////////////////////////////////////////////////#ifndef Amis_Initializer_h_#define Amis_Initializer_h_#include <amis/configure.h>#include <utility>AMIS_NAMESPACE_BEGINtemplate < class ArgType >class Initializer {private: int priority; Initializer* next;public: Initializer( Initializer*& queue, int pr = 0 ) { priority = pr; Initializer** pointer = &queue; while ( *pointer != NULL ) { if ( pr <= (*pointer)->priority ) break; pointer = &( (*pointer)->next ); } this->next = *pointer; *pointer = this; } virtual ~Initializer() {} virtual void start( ArgType arg ) = 0; int getPriority( void ) const { return priority; } static void initAll( Initializer* queue, ArgType arg ) { Initializer* q = queue; while ( q != NULL ) { q->start( arg ); q = q->next; } }};AMIS_NAMESPACE_END#endif // Amis_Initializer_h_// end of Initializer_h_
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -