亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? mtl_limits.h

?? Matrix_Template_Library.rar c++矩陣模塊庫函數
?? H
字號:
/** -*- C++ -*- **  KAI C++ Compiler ** **  Copyright (C) 1996-1997, Kuck & Associates, Inc. All rights reserved. **  This is an almost complete rewrite of Modena version. **//** ** Lib++     : The Modena C++ Standard Library, **             Version 2.4, August 27th 1997 ** ** Copyright (c) 1994-1997 Modena Software Inc. **/#ifndef MTL_LIMIT_H#define MTL_LIMIT_H#include "mtl/mtl_config.h"#ifdef MTL_CMPLR_HAS_LIMITS#include <limits>#else#define MTL_LIMITS_THROW#if 0#include <mcompile.h>#include <cfloat>#include <climits>#endif#include <float.h>#include <limits.h>namespace std {enum float_round_style {     round_indeterminate       = -1,     round_toward_zero         =  0,     round_to_nearest          =  1,     round_toward_infinity     =  2,     round_toward_neg_infinity =  3};template <class T>class numeric_limits {public:    static const bool is_specialized = false;    static T min() throw() {return T();}    static T max() throw() {return T();}    static const int  digits = 0;    static const int  digits10 = 0;    static const bool is_signed = false;    static const bool is_integer = false;    static const bool is_exact = false;    static const int  radix = 0;    static T epsilon() throw() {return T();}    static T round_error() throw() {return T();}    static const int  min_exponent = 0;    static const int  min_exponent10 = 0;    static const int  max_exponent = 0;    static const int  max_exponent10 = 0;    static const bool has_infinity = false;    static const bool has_quiet_NaN = false;    static const bool has_signaling_NaN = false;    static const bool has_denorm = false;    static const bool has_denorm_loss = false;    // Sept. 1996 draft is vague on how these can be guaranteed to return    // value without throwing an exception.      static T infinity() throw() {return T();};    static T quiet_NaN() throw() {return T();}    static T signaling_NaN() throw() {return T();}    static T denorm_min() throw() {return T();}    static const bool is_iec559 = false;    static const bool is_bounded = false;    static const bool is_modulo = false;    static const bool traps = false;    static const bool tinyness_before = false;    static const float_round_style round_style = round_toward_zero;};template<class T> const bool numeric_limits<T>::is_specialized;template<class T> const int  numeric_limits<T>::digits;template<class T> const int  numeric_limits<T>::digits10;template<class T> const bool numeric_limits<T>::is_signed;template<class T> const bool numeric_limits<T>::is_integer;template<class T> const bool numeric_limits<T>::is_exact;template<class T> const int  numeric_limits<T>::radix;template<class T> const int  numeric_limits<T>::min_exponent;template<class T> const int  numeric_limits<T>::min_exponent10;template<class T> const int  numeric_limits<T>::max_exponent;template<class T> const int  numeric_limits<T>::max_exponent10;template<class T> const bool numeric_limits<T>::has_infinity;template<class T> const bool numeric_limits<T>::has_quiet_NaN;template<class T> const bool numeric_limits<T>::has_signaling_NaN;template<class T> const bool numeric_limits<T>::has_denorm;template<class T> const bool numeric_limits<T>::has_denorm_loss;template<class T> const bool numeric_limits<T>::is_iec559;template<class T> const bool numeric_limits<T>::is_bounded;template<class T> const bool numeric_limits<T>::is_modulo;template<class T> const bool numeric_limits<T>::traps;template<class T> const bool numeric_limits<T>::tinyness_before;template<class T> const float_round_style numeric_limits<T>::round_style;// The specializations for floating-point types use the following macro // to factor out commonality.  They presume IEEE arithmetic.#define __KAI_NUMERIC_LIMITS_FLOAT(T)		\    static const bool is_specialized = true;	\    static const int  radix = 2;		\						\    static const bool is_signed = true;		\    static const bool is_integer = false;	\    static const bool is_exact = false;		\						\    static const bool has_infinity = true;	\    static const bool has_quiet_NaN = true;	\    static const bool has_signaling_NaN = true;	\    static const bool has_denorm = false;	\    static const bool has_denorm_loss = false;	\						\    static const bool is_iec559 = sizeof(T)<=8;	\    static const bool is_bounded = true;	\    static const bool is_modulo = false;	\    static const bool traps = true;		\    static const bool tinyness_before = true;	\ 						\    static T round_error ()   MTL_LIMITS_THROW    { return (T)0.5F; }    	\    static const float_round_style round_style = round_to_nearest;	\    static T infinity ()      MTL_LIMITS_THROW {return *(T*)(void*)data.value[0];}\    static T quiet_NaN ()     MTL_LIMITS_THROW {return *(T*)(void*)data.value[1];}\    static T signaling_NaN () MTL_LIMITS_THROW {return *(T*)(void*)data.value[2];}\private:					\    static const struct data_t {		\	T align;				\	int value[3][sizeof(T)/sizeof(int)];	\    } data;					\public:						\template<>class numeric_limits <float> {public:    static const int  digits = FLT_MANT_DIG;    static const int  digits10 = FLT_DIG;    static const int  min_exponent = FLT_MIN_EXP;    static const int  max_exponent = FLT_MAX_EXP;    static const int  min_exponent10 = FLT_MIN_10_EXP;    static const int  max_exponent10 = FLT_MAX_10_EXP;    __KAI_NUMERIC_LIMITS_FLOAT(float)    static float min ()          MTL_LIMITS_THROW    { return FLT_MIN; }    static float max ()          MTL_LIMITS_THROW    { return FLT_MAX; }    static float epsilon ()      MTL_LIMITS_THROW    { return FLT_EPSILON; }    static float denorm_min ()   MTL_LIMITS_THROW    { return FLT_MIN; }};template<>class numeric_limits <double> {public:    static const int  digits = DBL_MANT_DIG;    static const int  digits10 = DBL_DIG;    static const int  min_exponent = DBL_MIN_EXP;    static const int  max_exponent = DBL_MAX_EXP;    static const int  min_exponent10 = DBL_MIN_10_EXP;    static const int  max_exponent10 = DBL_MAX_10_EXP;    __KAI_NUMERIC_LIMITS_FLOAT(double)    static double min ()          MTL_LIMITS_THROW    { return DBL_MIN; }    static double max ()          MTL_LIMITS_THROW    { return DBL_MAX; }    static double epsilon ()      MTL_LIMITS_THROW    { return DBL_EPSILON; }    static double denorm_min ()   MTL_LIMITS_THROW    { return min (); }};template<>class numeric_limits <long double> {public:    static const int  digits = LDBL_MANT_DIG;    static const int  digits10 = LDBL_DIG;    static const int  min_exponent = LDBL_MIN_EXP;    static const int  max_exponent = LDBL_MAX_EXP;    static const int  min_exponent10 = LDBL_MIN_10_EXP;    static const int  max_exponent10 = LDBL_MAX_10_EXP;    __KAI_NUMERIC_LIMITS_FLOAT(long double)    static long double min ()          MTL_LIMITS_THROW    { return LDBL_MIN; }    static long double max ()          MTL_LIMITS_THROW    { return LDBL_MAX; }    static long double epsilon ()      MTL_LIMITS_THROW    { return LDBL_EPSILON; }    static long double denorm_min ()   MTL_LIMITS_THROW    { return min (); }};// The specializations for integral types use three macros to factor out// commonality.//// 	__KAI_NUMERIC_LIMITS_INTEGRAL declares members of numeric_limits<T>// 	whose value does not depend on the signdness of T. ////	__KAI_NUMERIC_LIMITS_SIGNED(T) declares members dependent on//	knowing that T is signed.////	__KAI_NUMERIC_LIMITS_UNSIGNED(T) declares members dependent on//	knowing that T is unsigned.//// We could have been real cutesy and come up with definitions that would// work for both signed and unsigned types, but doing so does not seem// to be worth the additional obfuscation and overhead for constant folding.//// The definitions are not intended to be universally portable.// They are designed with KAI C++ targets in mind. -ADR#define __KAI_NUMERIC_LIMITS_INTEGRAL(T)			\    static const bool is_specialized = true;			\								\    static const int radix = 2;					\    static const int min_exponent = 0;				\    static const int max_exponent = 0;				\    static const int min_exponent10 = 0;			\    static const int max_exponent10 = 0;			\								\    static const bool is_integer = true;			\    static const bool is_exact = true;				\								\    static const bool has_infinity = false;			\    static const bool has_quiet_NaN = false;			\    static const bool has_signaling_NaN = false;		\    static const bool has_denorm = false;			\    static const bool has_denorm_loss = false;			\								\    static const bool is_iec559 = false;			\    static const bool is_bounded = true;			\    static const bool is_modulo = true;				\    static const bool traps = false;				\    static const bool tinyness_before = false;			\								\    static T infinity ()       MTL_LIMITS_THROW { return 0; }	\    static T quiet_NaN ()      MTL_LIMITS_THROW { return 0; }	\    static T signaling_NaN () MTL_LIMITS_THROW { return 0; }		\    static T epsilon ()     MTL_LIMITS_THROW { return 1; }		\    static T denorm_min ()  MTL_LIMITS_THROW { return min (); }	\    static T round_error () MTL_LIMITS_THROW { return 0; }		\								\    static const float_round_style round_style = round_toward_zero;#define __KAI_NUMERIC_LIMITS_SIGNED(T) 				\    static const int digits = 8*sizeof(T)-1;			\    /* Following presumes 8, 16, 32, or 64-bit T. */		\    static const int digits10 = 7*sizeof(T)/3; 			\    static const bool is_signed = true;				#define __KAI_NUMERIC_LIMITS_UNSIGNED(T) 			\    static const int digits = 8*sizeof(T);			\    /* Following presumes 8, 16, 32, or 64-bit T. */		\    static const int digits10 = 12*sizeof(T)/5;  		\    static const bool is_signed = false;				template<>class numeric_limits <int> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(int)    __KAI_NUMERIC_LIMITS_SIGNED(int)    static int min() MTL_LIMITS_THROW { return INT_MIN; }    static int max() MTL_LIMITS_THROW { return INT_MAX; }};template<>class numeric_limits <unsigned int> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(unsigned int)    __KAI_NUMERIC_LIMITS_UNSIGNED(unsigned int)    static unsigned int min() MTL_LIMITS_THROW { return 0; }    static unsigned int max() MTL_LIMITS_THROW { return UINT_MAX; }};template<>class numeric_limits <long> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(long)    __KAI_NUMERIC_LIMITS_SIGNED(long)    static long min() MTL_LIMITS_THROW { return LONG_MIN; }    static long max() MTL_LIMITS_THROW { return LONG_MAX; }};template<>class numeric_limits <unsigned long> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(unsigned long)    __KAI_NUMERIC_LIMITS_UNSIGNED(unsigned long)    static unsigned long min() MTL_LIMITS_THROW { return 0; }    static unsigned long max() MTL_LIMITS_THROW { return ULONG_MAX; }};template<>class numeric_limits <short> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(short)    __KAI_NUMERIC_LIMITS_SIGNED(short)    static short min () MTL_LIMITS_THROW { return SHRT_MIN; }    static short max () MTL_LIMITS_THROW { return SHRT_MAX; }};template<>class numeric_limits <unsigned short> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(unsigned short)    __KAI_NUMERIC_LIMITS_UNSIGNED(unsigned short)    static unsigned short min () MTL_LIMITS_THROW { return 0; }    static unsigned short max () MTL_LIMITS_THROW { return USHRT_MAX; }};template<>class numeric_limits <char> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(char)    static const int digits = CHAR_MIN<0 ? 7 : 8;    static const int digits10 = 2;    static const bool is_signed = CHAR_MIN<0;				    static char min () MTL_LIMITS_THROW { return CHAR_MIN; }    static char max () MTL_LIMITS_THROW { return CHAR_MAX; }};template<>class numeric_limits <signed char> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(signed char)    __KAI_NUMERIC_LIMITS_SIGNED(signed char)    static signed char min ()         MTL_LIMITS_THROW { return SCHAR_MIN; }    static signed char max ()         MTL_LIMITS_THROW { return SCHAR_MAX; }};template<>class numeric_limits <unsigned char> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(unsigned char)    __KAI_NUMERIC_LIMITS_UNSIGNED(unsigned char)    static unsigned char min ()         MTL_LIMITS_THROW { return 0; }    static unsigned char max ()         MTL_LIMITS_THROW { return UCHAR_MAX; }};#if 0#ifdef MTL_WCHARTtemplate<>class numeric_limits <wchar_t> {public:    __KAI_NUMERIC_LIMITS_INTEGRAL(wchar_t)    static const bool is_signed = (wchar_t)-1<0;    static const int digits = 8*sizeof(wchar_t) - is_signed;    // Following assumes that wchar_t is 8, 16, or 32-bit,     // either signed or unsigned.    static const int digits10 = 7*sizeof(T)/3;    static char min () MTL_LIMITS_THROW { return CHAR_MIN; }    static char max () MTL_LIMITS_THROW { return CHAR_MAX; }};#endif /* MTL_WCHART */#ifdef _BOOLtemplate<>class numeric_limits <bool> {public:    static const bool is_specialized = true;    static const int radix = 2;    static const int min_exponent = 0;    static const int max_exponent = 0;    static const int min_exponent10 = 0;    static const int max_exponent10 = 0;    static const bool is_integer = false;    static const bool is_exact = true;    static const bool has_infinity = false;    static const bool has_quiet_NaN = false;    static const bool has_signaling_NaN = false;    static const bool has_denorm = false;    static const bool has_denorm_loss = false;    static const bool is_iec559 = false;    static const bool is_bounded = true;    static const bool is_modulo = false;    static const bool traps = false;    static const bool tinyness_before = false;    static bool infinity ()       MTL_LIMITS_THROW { return false; }    static bool quiet_NaN ()      MTL_LIMITS_THROW { return false; }    static bool signaling_NaN () MTL_LIMITS_THROW { return false; }    static bool epsilon ()     MTL_LIMITS_THROW { return false; }    static bool denorm_min ()  MTL_LIMITS_THROW { return min (); }    static bool round_error () MTL_LIMITS_THROW { return false; }								    static const float_round_style round_style = round_toward_zero;    static const int digits = 1;    static const int digits10 = 0;    static const bool is_signed = false;    static bool min ()         MTL_LIMITS_THROW { return false; }    static bool max ()         MTL_LIMITS_THROW { return true; }};#endif	/* _BOOL */#endif} /* namespace std */#endif /* MTL_CMPLR_HAS_LIMITS */#endif /* MTL_LIMIT_H */

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品天干天干在观线| 精品久久久三级丝袜| 丁香啪啪综合成人亚洲小说 | 久久电影国产免费久久电影| 一区二区三区.www| 亚洲国产日韩精品| 午夜婷婷国产麻豆精品| 日本欧美大码aⅴ在线播放| 美国一区二区三区在线播放| 全国精品久久少妇| 国产老肥熟一区二区三区| 丰满岳乱妇一区二区三区 | 自拍视频在线观看一区二区| 国产欧美一区二区三区网站| 国产精品久久午夜夜伦鲁鲁| 亚洲精品视频在线观看网站| 亚洲6080在线| 激情综合网最新| www.欧美精品一二区| 91猫先生在线| 欧美日本国产一区| 精品美女在线播放| 国产精品久久久久桃色tv| 亚洲激情欧美激情| 激情久久五月天| 一本色道久久加勒比精品| 欧美日韩一区精品| 欧美va亚洲va国产综合| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆| 亚洲一区二区三区自拍| 精品亚洲aⅴ乱码一区二区三区| 成人精品小蝌蚪| 日韩欧美在线观看一区二区三区| 国产亚洲1区2区3区| 亚洲一二三四区| 国产激情精品久久久第一区二区 | 国产成人在线色| 欧美三级在线看| 欧美韩国一区二区| 日本色综合中文字幕| 波多野结衣亚洲| 欧美va亚洲va| 亚洲成va人在线观看| 粉嫩av一区二区三区粉嫩| 欧美日本乱大交xxxxx| 1000精品久久久久久久久| 久久av中文字幕片| 欧美日韩专区在线| 亚洲日本一区二区| 国产精品一区在线观看乱码 | 91在线一区二区三区| 日韩欧美你懂的| 亚洲1区2区3区视频| 99re这里只有精品6| 久久在线观看免费| 美腿丝袜亚洲一区| 欧美精品丝袜中出| 亚洲高清视频在线| 在线视频欧美区| 中文字幕亚洲精品在线观看| 国产盗摄精品一区二区三区在线| 欧美一区二区三区性视频| 亚洲影视在线播放| 色综合中文综合网| 一区二区三区久久| av一区二区三区黑人| 国产清纯白嫩初高生在线观看91 | 国产亚洲欧美在线| 精品中文字幕一区二区| 日韩午夜在线观看| 日本亚洲视频在线| 日韩欧美在线一区二区三区| 日本不卡高清视频| 日韩精品中文字幕一区二区三区| 午夜伦欧美伦电影理论片| 欧美男人的天堂一二区| 天堂成人国产精品一区| 制服丝袜中文字幕一区| 五月综合激情婷婷六月色窝| 97精品国产露脸对白| 亚洲免费在线视频| 欧洲av一区二区嗯嗯嗯啊| 亚洲高清不卡在线| 91精品国产入口| 韩国成人福利片在线播放| 中文字幕精品综合| 97精品国产露脸对白| 亚洲国产精品久久久男人的天堂| 欧美精品丝袜中出| 久久99久久久久| 国产女同互慰高潮91漫画| 成人97人人超碰人人99| 玉米视频成人免费看| 精品视频免费看| 激情综合色综合久久| 国产精品久久毛片| 91九色最新地址| 日韩电影在线免费看| 久久一夜天堂av一区二区三区| 成人妖精视频yjsp地址| 亚洲免费大片在线观看| 欧美一级电影网站| 国产精品888| 亚洲国产你懂的| 日韩免费成人网| 91在线免费看| 免费视频最近日韩| 中文字幕亚洲综合久久菠萝蜜| 欧美日韩精品综合在线| 国产成人午夜99999| 亚洲国产一区二区在线播放| 久久久久99精品一区| 欧美日韩国产一区二区三区地区| 国模无码大尺度一区二区三区| 亚洲精品中文在线| 精品福利一二区| 欧美性猛片aaaaaaa做受| 国产成人综合视频| 日本午夜一区二区| 洋洋成人永久网站入口| 久久久青草青青国产亚洲免观| 91福利小视频| 北岛玲一区二区三区四区| 秋霞成人午夜伦在线观看| 亚洲人123区| 久久九九久久九九| 日韩欧美一二三| 欧美久久久久久蜜桃| 99久久婷婷国产| 国产成人精品免费网站| 日韩不卡在线观看日韩不卡视频| 国产精品二三区| 欧美激情资源网| 久久久久久久久久久久电影 | 一区二区三区不卡视频| 国产日韩欧美制服另类| 日韩欧美国产麻豆| 欧美群妇大交群中文字幕| 色婷婷亚洲一区二区三区| 成人av免费在线播放| 国产乱理伦片在线观看夜一区| 日产欧产美韩系列久久99| 亚洲一区影音先锋| 亚洲免费电影在线| 亚洲美女视频在线| 亚洲色图自拍偷拍美腿丝袜制服诱惑麻豆 | 韩国三级在线一区| 亚洲福利视频一区| 亚洲成人黄色小说| 亚洲在线观看免费| 亚洲成av人片在线观看无码| 香蕉久久一区二区不卡无毒影院| 国产精品久久久久久久蜜臀| 国产精品无人区| 最新国产成人在线观看| 亚洲日本免费电影| 亚洲综合一区二区精品导航| 亚洲国产精品久久不卡毛片 | 9人人澡人人爽人人精品| 99在线视频精品| 在线观看91视频| 欧美高清性hdvideosex| 欧美一区二区免费观在线| 日韩欧美电影一区| 久久久久国产精品人| 国产精品素人一区二区| 亚洲一区二区美女| 毛片av一区二区| 国产露脸91国语对白| 91免费看`日韩一区二区| 在线一区二区观看| 日韩午夜电影av| 国产精品久久综合| 亚洲成av人片一区二区梦乃| 麻豆久久久久久| 99视频一区二区| 欧美日韩成人高清| 国产亚洲一区二区三区四区| 亚洲毛片av在线| 久久国产生活片100| 波多野结衣一区二区三区 | 亚洲欧洲在线观看av| 亚洲一区国产视频| 国内不卡的二区三区中文字幕| 成+人+亚洲+综合天堂| 欧美日韩电影在线| 国产校园另类小说区| 一区二区三区日韩欧美| 美国十次综合导航| 欧美性色综合网| 国产欧美日韩亚州综合| 日韩国产高清在线| av网站免费线看精品| 欧美精品一级二级| 中文字幕日韩一区| 国内精品第一页| 欧美日本在线观看| 亚洲欧美怡红院| 国产一区二区三区在线观看免费 | 精品国产乱子伦一区|