ULRE/inc/hgl/platform/compiler/Microsoft.h

62 lines
2.7 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#ifndef HGL_COMPILER_MICROSOFT_INCLUDE
#define HGL_COMPILER_MICROSOFT_INCLUDE
//--------------------------------------------------------------------------------------------------
#define HGL_COMPILER_NAME OS_TEXT("Microsoft C/C++")
#define HGL_LIB_COMPILER_NAME OS_TEXT("MSC")
#if _MSC_VER < 1900 //Visual C++ 2015(19)
#error Please upgrade your compiler or development tools to Microsoft C/C++ 19.0 (Visual C++ 2015) or later.
#else
#if _MSC_VER >= 1910
#define HGL_LIB_COMPILER_VERSION OS_TEXT("19.1") //Visual C++ 2017
#elif _MSC_VER == 1900
#define HGL_LIB_COMPILER_VERSION OS_TEXT("19") //Visual C++ 2015
#else
#define HGL_LIB_COMPILER_VERSION OS_TEXT("Unknow")
#endif//_MSC_VER
#endif//_MSC_VER
#define HGL_THREAD_LOCAL_STORAGE __declspec(thread) //线程本地储存
//--------------------------------------------------------------------------------------------------
#define HGL_FMT_I64 "%I64d"
#define HGL_FMT_U64 "%I64u"
//参考文档最后查阅支持版本为VC2013网址http://msdn.microsoft.com/en-us/library/tcxf1dw6.aspx
//--------------------------------------------------------------------------------------------------
#define _USE_MATH_DEFINES // 使用数学常数定义
//--------------------------------------------------------------------------------------------------
#pragma warning(disable:4819) // ansi -> unicode
#pragma warning(disable:4311) // 模板警告
#pragma warning(disable:4800) // -> bool 性能损失警告
#pragma warning(disable:4244) // -> int 精度丢失警告
#pragma warning(disable:4804) // 不安全的类型比较
#pragma warning(disable:4805) // 不安全的类型比较
#ifndef _CRT_SECURE_NO_WARNINGS
#define _CRT_SECURE_NO_WARNINGS
#endif//
#ifndef _CRT_SECURE_NO_DEPRECATE
#define _CRT_SECURE_NO_DEPRECATE
#endif//
#ifndef _CRT_NON_CONFORMING_SWPRINTFS
#define _CRT_NON_CONFORMING_SWPRINTFS
#endif//
#ifdef _DLL
#define HGL_LIB_CRT "Dynamic"
#else
#define HGL_LIB_CRT "Static"
#endif//_DLL
#define HGL_LIB_FRONT HGL_LIB_OS "_" HGL_LIB_COMPILER_NAME "_" HGL_LIB_DEBUG_NAME "_" HGL_LIB_CRT "_"
#define HGL_LIB_END ".LIB"
//--------------------------------------------------------------------------------------------------
#include<hgl/platform/compiler/DataTypeWin.h>
#include<hgl/platform/compiler/DataTypeTiny.h>
#include<hgl/platform/compiler/Property.h>
//--------------------------------------------------------------------------------------------------
#endif//HGL_COMPILER_MICROSOFT_INCLUDE