CrossFramework Library

XBase/ScalerClass.hpp

説明を見る。
00001 
00006 #if defined(XBASE_INCLUDED_SCALERCLASS_HPP)
00007 #else
00008 #define XBASE_INCLUDED_SCALERCLASS_HPP
00009 
00010 //------------------------------------------------------------
00011 #include <XBase/StaticAssert.hpp>
00012 #include <XBase/ScalerStruct.hpp>
00013 #include <XBase/TypeTraits.hpp>
00014 
00015 //------------------------------------------------------------
00016 namespace XBase {
00018 
00019 
00023     template< typename T >
00024     class ScalerClass : public ScalerStruct<T>
00025     {
00026     public:
00028 
00029 
00030         ScalerClass() : SuperClass() {}
00031 
00033         ScalerClass( const typename ScalerStruct<T>::ValueType aValue )
00034         {
00035             SuperClass::value_ = aValue;
00036         };
00038 
00039     private:
00040         typedef ::XBase::ScalerStruct<T> SuperClass; // 親クラスのエイリアス。
00041         XBASE_STATIC_ASSERT( sizeof( SuperClass ) == sizeof( ValueType ) ); // サイズが同じであることを保証。        
00042     };
00044 }
00045 //------------------------------------------------------------
00046 #endif
00047 // EOF
 全て クラス ネームスペース ファイル 関数 変数 型定義 列挙型 列挙型の値 マクロ定義