File Annotation

Not logged in
dcdd144598 2011-02-23        kinaba: #ifndef _KILIB_CMDARG_H_
dcdd144598 2011-02-23        kinaba: #define _KILIB_CMDARG_H_
dcdd144598 2011-02-23        kinaba: #include "types.h"
dcdd144598 2011-02-23        kinaba: #include "memory.h"
dcdd144598 2011-02-23        kinaba: #include "ktlaptr.h"
dcdd144598 2011-02-23        kinaba: #include "ktlarray.h"
dcdd144598 2011-02-23        kinaba: #ifndef __ccdoc__
dcdd144598 2011-02-23        kinaba: namespace ki {
dcdd144598 2011-02-23        kinaba: #endif
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: //=========================================================================
dcdd144598 2011-02-23        kinaba: //@{ @pkg ki.StdLib //@}
dcdd144598 2011-02-23        kinaba: //@{
dcdd144598 2011-02-23        kinaba: //	コマンドライン文字列の分割
dcdd144598 2011-02-23        kinaba: //
dcdd144598 2011-02-23        kinaba: //	ただ単にスペースと二重引用符を考慮して区切るだけです。
dcdd144598 2011-02-23        kinaba: //@}
dcdd144598 2011-02-23        kinaba: //=========================================================================
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: class Argv : public Object
dcdd144598 2011-02-23        kinaba: {
dcdd144598 2011-02-23        kinaba: public:
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	//@{ 指定された文字列を分割する //@}
dcdd144598 2011-02-23        kinaba: 	Argv( const TCHAR* cmd = GetCommandLine() );
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	//@{ 引数Get //@}
dcdd144598 2011-02-23        kinaba: 	const TCHAR* operator[]( ulong i ) const;
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	//@{ 引数の個数 //@}
dcdd144598 2011-02-23        kinaba: 	ulong size() const;
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: private:
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	darr<TCHAR>           buf_;
dcdd144598 2011-02-23        kinaba: 	storage<const TCHAR*> arg_;
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: private:
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 	NOCOPY(Argv);
dcdd144598 2011-02-23        kinaba: };
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: //-------------------------------------------------------------------------
dcdd144598 2011-02-23        kinaba: #ifndef __ccdoc__
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: inline const TCHAR* Argv::operator []( ulong i ) const
dcdd144598 2011-02-23        kinaba: 	{ return arg_[i]; }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: inline ulong Argv::size() const
dcdd144598 2011-02-23        kinaba: 	{ return arg_.size(); }
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: //=========================================================================
dcdd144598 2011-02-23        kinaba: 
dcdd144598 2011-02-23        kinaba: #endif // __ccdoc__
dcdd144598 2011-02-23        kinaba: }      // namespace ki
dcdd144598 2011-02-23        kinaba: #endif // _KILIB_CMDARG_H_