SourceForge.jp

stdafx.h

説明を見る。
00001 
00002 
00003 #ifndef _DKUTIL_STDAFX__
00004 #define _DKUTIL_STDAFX__
00005 
00006 //ちと以下のは気にしないどいて・・・
00007 //このdefineが定義されていると#include "stdafx.h"を使用することになる。
00008 //dkutilプロジェクトにはデフォルトのプリプロセッサとして定義されている。
00009 //#define DKUTIL_LIB_BUILD
00010 
00011 
00012 #include "dkutilCompileOption.h"
00013 
00014 #if defined(USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST)
00015 #   include <dkutil/config/dkutilConfig.h>
00016 #else
00017 #   if defined(DKUTIL_COMPILE_OPTION_MSVC)
00018 #       include "config/dkutilConfig.h"
00019 #   else
00020 
00021 
00022 #       include "dkutilConfig.h"
00023 #   endif
00024 #endif
00025 
00026 //**********************************************************
00027 //コンパイルオプションのエラーチェック
00028 //**********************************************************
00029 #ifdef USE_DKINGYO_OBJECT_TEST //テスト関数を使うのに・・・
00030 #   ifndef USE_DKINGYO_MEMORYLEAK_CHECK //メモリリークチェックを有効にしていなかったら
00031 #       error "If you use a USE_DKINGYO_OBEJCT_TEST option, please confirm USE_DKINGYO_MEMORYLEAK_CHECK."
00032 #   endif
00033 #endif
00034 
00035 
00036 
00037 // For Windows
00038 #ifdef _DEBUG
00039 #   ifndef DEBUG
00040 #       define DEBUG
00041 #   endif
00042 #endif
00043 #ifdef _NDEBUG
00044 #   ifndef NDEBUG
00045 #       define NDEBUG
00046 #   endif
00047 #endif
00048 
00049 
00050 
00051 
00052 //**********************************************************
00053 //警告対策
00054 //**********************************************************
00055 #ifdef USE_DKINGYO_WARNING_MEASURE
00056 #   ifdef DKUTIL_COMPILE_OPTION_MSVC
00057 // 不要な警告を抑制
00058 #   if _MSC_VER > 1000
00059 
00060 
00061 #       pragma warning(disable : 4200)      // size 0 array (テンプレート引数で警告される)
00062 #       pragma warning(disable : 4290)      // C++ 例外指定は無視される
00063 #       pragma warning(disable : 4511)      // can't generate copy constructor (so what?)
00064 #       pragma warning(disable : 4512)      // can't generator assign operator (so what?)
00065 #       pragma warning(disable : 4710)      // function couldn't be inlined
00066 #       pragma warning(disable : 4786)      // truncate debug symbol
00067 
00068 #   endif // _MSC_VER > 1000
00069 #   endif
00070 #endif // end of USE_DKINGYO_WARNING_MEASURE
00071 
00072 
00073 
00074 
00075 
00076 //**********************************************************
00077 //STLPort関連の設定
00078 //**********************************************************
00079 
00080 #ifdef USE_DKINGYO_STLPORT //STLPortを使います!!
00081 
00082 //STLPortのセッティングをする
00083     #ifdef USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST
00084     #   include <dkutil/include/dkutilSTLPortPolicy.h>
00085     #else
00086     #   if DKUTIL_COMPILE_OPTION_MSVC
00087     #       include "include/dkutilSTLPortPolicy.h"
00088     #   else
00089     #       include "dkutilSTLPortPolicy.h"
00090     #   endif
00091     #endif
00092 
00093 
00094 
00095 #   if defined(USE_DKINGYO_MEMORYLEAK_CHECK) && defined(_DEBUG)
00096 // STLport の node allocator を使うと、誤まってリークが報告されてしまうため
00097 #       define _STLP_USE_MALLOC
00098 #   endif
00099 
00100 
00101 #else//STLPortじゃないなら・・・
00102 
00103 
00104 #endif //end of USE_DKINGYO_STLPORT 
00105 
00106 
00107 
00108 //**********************************************************
00109 //ブースト軍
00110 //**********************************************************
00111 //ぶうすと使います〜〜
00112 //http://www.boost.orgにあるC++用便利かつ最高なライブラリ群です。
00113 //#include <boost/config.hpp>
00114 #if DKUTIL_COMPILE_OPTION_MSVC
00115 #       include "include/dkutilBoostPolicy.h"
00116 #elif defined(USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST)
00117 #       include <dkutil/include/dkutilBoostPolicy.h>
00118 #endif
00119 /*
00120 #ifdef USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST
00121 #   include <dkutil/include/dkutilBoostPolicy.h>
00122 #else
00123 #   if DKUTIL_COMPILE_OPTION_MSVC
00124 #       include "include/dkutilBoostPolicy.h"
00125 #   else
00126 #       include "dkutilBoostPolicy.h"
00127 #   endif
00128 #endif
00129 */
00130 
00131 //**********************************************************
00132 //ロキ軍
00133 //**********************************************************
00134 //Loki使いまんせ〜〜
00135 //http://www.moderncppdesign.com/ Modern C++ Designで有名なLokiです。
00136 //ダウンロードはhttp://sourceforge.net/projects/loki-lib とかからです。
00137 #if DKUTIL_COMPILE_OPTION_MSVC
00138 #include "include/dkutilLokiPolicy.h"
00139 #elif defined(USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST)
00140 #include <dkutil/include/dkutilLokiPolicy.h>
00141 #endif
00142 //**********************************************************
00143 //マルチスレッド,DLL等リンカ問題??関連
00144 //**********************************************************
00145 
00146 
00147 #if defined(DKUTIL_BUILD) || defined(DKUTIL_BUILD_TEST)
00148 #   if _MSC_VER >= 1200
00149 //MSVC6用のリンカのポリシーを設定
00150 #ifdef USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST
00151 #   include <dkutil/include/dkutilMSVC6LinkerPolicy.h>
00152 #else
00153 #   if DKUTIL_COMPILE_OPTION_MSVC
00154 #       include "include/dkutilMSVC6LinkerPolicy.h"
00155 #   elif DKUTIL_COMPILE_OPTION_DEVCPP
00156 #       include "dkutilMSVC6LinkerPolicy.h"
00157 #   elif
00158 #       include "dkutilMSVC6LinkerPolicy.h"
00159 #   endif
00160 #endif
00161 
00162 #   endif
00163 #endif //end of DKUTIL_BUILD etc...
00164 
00165 
00166 //STLのインクルード
00167 
00168 #ifdef USE_DKINGYO_INCLUDE_SETTING_LIKE_BOOST
00169 #   include <dkutil/include/dkutilSTLInclude.h>
00170 #else
00171 #   if defined(DKUTIL_COMPILE_OPTION_MSVC)
00172 #       include "include/dkutilSTLInclude.h"
00173 #   else
00174 #       include "dkutilSTLInclude.h"
00175 #   endif
00176 #endif
00177 
00178 
00179 
00180 
00181 
00182 
00183 #ifndef USE_DKINGYO_STLPORT
00184 #   ifdef _STLPORT_VERSION
00185 #       error "USE_DKINGYO_STLPORT定義されてないのに、何故、STLPort使ってるん?"
00186 #   endif
00187 #else
00188 #   ifndef _STLPORT_VERSION
00189 #       error "USE_DKINGYO_STLPORTが定義されているのに、それが使われていない。"
00190 #   endif
00191 #endif
00192 
00193 
00194 
00195 
00196 
00197 
00198 /*
00199 #ifdef _DEBUG
00200 #   define NO_LIBC "/NODEFAULTLIB:libc"
00201 #   define NO_LIBCMT "/NODEFAULTLIB:libcmt"
00202 #else
00203 #   define NO_LIBC "/NODEFAULTLIB:libcd"
00204 #   define NO_LIBCMT "/NODEFAULTLIB:libcmtd"
00205 #endif
00206 
00207 #pragma comment(linker, NO_LIBC)
00208 #pragma comment(linker, NO_LIBCMT)
00209 */
00210 /*
00211 #if defined(_USEDLL) || defined(USE_DKINGYO_DLL_COMPILE)
00212 
00213 #   pragma comment(linker,"/NODEFAULTLIB:libcmtd")
00214 #   pragma comment(linker,"/NODEFAULTLIB:libcd")
00215 #   pragma comment(linker,"/NODEFAULTLIB:libcmt")
00216 #   pragma comment(linker,"/NODEFAULTLIB:libc")
00217 #   ifdef _DEBUG
00218 #       pragma comment(lib,"MSVCPRTD")
00219 #   else
00220 #       pragma comment(lib,"MSVCPRT")
00221 #   endif
00222 #endif
00223     */
00224 
00225 
00226 //**********************************************************
00227 //メモリリーク関連の設定
00228 //**********************************************************
00229 
00230 #ifdef USE_DKINGYO_MEMORYLEAK_CHECK
00231 #   if defined(DKUTIL_COMPILE_OPTION_MSVC)
00232 #       include <crtdbg.h>
00233     // デバッグビルド時には、デバッグ用メモリアロケータを使う
00234 #   define _CRTDBG_MAP_ALLOC
00235 #   endif
00236 #endif
00237 
00238 
00239 
00240 //**********************************************************
00241 //基本的ヘッダ軍
00242 //**********************************************************
00243 
00244 #include <windows.h>
00245 #include <math.h>
00246 #include <LIMITS.H>
00247 #include <time.h>
00248 #include <tchar.h>
00249 //#include <new>
00250 
00251 
00252 
00253 #ifdef _WIN32 /* We need the following two to set stdin/stdout to binary */
00254 #include <io.h>
00255 #include <fcntl.h>
00256 #endif
00257 
00258 
00259 //**********************************************************
00260 //各種ライブラリ軍
00261 //**********************************************************
00262 //#pragma comment(lib,"winmm")
00263 
00264 
00265 //**********************************************************
00266 //ここらへんって32ビット環境依存だから^^;;;;;注意してね^^;;;
00267 //**********************************************************
00268 
00269 //定数を定義する
00271 #define DKINGYO_ULONGLONG_MAX 18446744073709551615 
00272 
00273 #define DKINGYO_LONGLONG_MAX 9223372036854775807 
00274 
00275 #define DKINGYO_LONGLONG_MIN -9223372036854775808 
00276 
00277 #ifndef ULONGLONG_MAX
00278 #   define ULONGLONG_MAX DKINGYO_ULONGLONG_MAX
00279 #endif
00280 #ifndef LONGLONG_MAX
00281 #   define LONGLONG_MAX DKINGYO_LONGLONG_MAX
00282 #endif
00283 #ifndef LONGLONG_MIN
00284 #   define LONGLONG_MIN DKINGYO_LONGLONG_MIN
00285 #endif
00286 
00287 #define UCHAR_MAX_STR "255" 
00288 #define USHRT_MAX_STR "65535" 
00289 
00290 #define SHRT_MAX_STR "32767" 
00291 
00292 #define SHRT_MIN_STR "-32768"
00293 
00294 #define INT_MAX_STR "2147483647"
00295 
00296 #define UINT_MAX_STR "4294967295"
00297 
00298 #define ULONG_MAX_STR "4294967295"
00299 
00300 #define LONGLONG_MAX_STR "9223372036854775807"
00301 
00302 #define ULONGLONG_MAX_STR "18446744073709551615" 
00303 /*
00304 (0xffffffff) unsigned long の最大値 
00305 INT_MAX 2147483647 (signed)  int の最大値 
00306 INT_MIN -2147483647-1 (signed)  int の最小値 
00307 LONG_MAX 2147483647 (signed)  long の最大値 
00308 LONG_MIN -2147483647-1 (signed)  long の最小値 
00309 */
00310 
00311 
00312 
00313 
00314 
00315 #endif //end of  _DKUTIL_STDAFX__ defined

dkutil 1.02リリース前 d金魚専用マニュアルバージョンに対してSun Dec 28 21:23:08 2003に生成されました。 doxygen 1.3.5