看見別人的
帖子 ,也做了下。
代碼只支持內建類型。
1 #include < iostream > 2 3 template< bool , typename T, typename F > 4 struct Select_type { typedef T R; } ; 5 6 template< typename T, typename F > 7 struct Select_type < false , T, F > { typedef F R; } ; 8 9 template< typename T, typename S > 10 struct Larger_type { 11 typedef typename Select_type< sizeof (T) >= sizeof (S), T, S > ::R R; 12 }; 13 14 template< typename T, typename S > 15 typename Larger_type< T, S > ::R min_value(T a, S b) 16 { 17 return a < b ? a : b; 18 }19 20 21 int main() 22 { 23 int a = 2 ; 24 double b = 1.2 ; 25 std::cout << min_value(a, b) << " " << min_value(b, a) << " \n " ; 26 }27 28
浮點數與整型進行比較時,默認整型轉為浮點數
template< bool , typename T, typename F > struct Select_type { typedef T R; } ; template < typename T, typename F > struct Select_type < false , T, F > { typedef F R; } ; template < typename T > struct Type_rank { static const int rank = 0 ; } ; template <> struct Type_rank < float > { static const int rank = 21 ; } ; template <> struct Type_rank < double > { static const int rank = 22 ; } ; template <> struct Type_rank < long double > { static const int rank = 23 ; } ; template < typename T, typename S > struct Larger_type { static const int fa = Type_rank < T > ::rank; static const int fb = Type_rank < S > ::rank; static const bool flag = fa > fb || (fa == fb && sizeof (T) >= sizeof (S)); typedef typename Select_type < flag, T, S > ::R R; } ; template < typename T > struct Larger_type < T, T > { typedef T R;} ; template < typename T, typename S > typename Larger_type< T, S > ::R min_value(T a, S b) { return a < b ? a : b; }
色88久久久久高潮综合影院 |
久久中文字幕视频、最近更新 |
一本色道久久HEZYO无码 |
久久精品国产亚洲精品2020 |
久久99精品国产一区二区三区 |
中文字幕亚洲综合久久2 |
欧美久久久久久 |
欧美亚洲国产精品久久蜜芽 |
2021国内久久精品 |
99久久国产主播综合精品 |
国产69精品久久久久9999APGF
|
久久免费99精品国产自在现线 |
亚洲va中文字幕无码久久不卡 |
久久99精品久久久久久噜噜 |
久久久女人与动物群交毛片 |
怡红院日本一道日本久久
|
久久se精品一区二区 |
久久婷婷午色综合夜啪 |
青青草原1769久久免费播放 |
香蕉久久av一区二区三区 |
亚洲国产精品狼友中文久久久 |
www亚洲欲色成人久久精品 |
97久久综合精品久久久综合 |
国产精品成人久久久 |
99精品国产免费久久久久久下载 |
精品免费久久久久国产一区 |
91精品国产91热久久久久福利 |
国产美女久久精品香蕉69 |
久久天堂AV综合合色蜜桃网 |
精品国产乱码久久久久久人妻 |
亚洲中文字幕伊人久久无码 |
亚洲精品无码久久毛片 |
国产69精品久久久久观看软件 |
久久综合久久鬼色 |
亚洲欧美一区二区三区久久 |
伊人久久一区二区三区无码 |
欧美粉嫩小泬久久久久久久 |
亚洲另类欧美综合久久图片区 |
人妻无码αv中文字幕久久琪琪布 |
久久精品成人免费观看97 |
欧美久久久久久午夜精品 |