C#预处理器指令之#define/#undefine/#if/#elif/#else/#endif
2016-12-03 12:48
567 查看
预处理器命令的功能非常强大,在编程过程中的使用也非常广泛,比如在版本发布中使用非常方便;1,#define(告诉编译器存在给定名称的符号) #undefine(删除符号)2,#if #elif #else #endif#define本身没有什么作用,一般与其他预处理器指令配合使用(#if)使用#define 告诉编译器存在给定的符号
在VS中添加名称符号
在Unity使用
----使用#define 告诉编译器存在给定的符号--------------------------------------#define ANDROID#define IOS#define WPusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace CShapeB{ class Test {#if ANDROID #if QD1 #elif QD2 #elif QD3 #endif#elif IOS #if QD1 #elif QD2 #elif QD3 #endif#elif WP#elif ELSE#else#endif }} -----在VS中添加名称符号--------------------------------------1,Debug-->配置管理器。
2,Debug--><新建...>。
3,填写名称ANDROID_DEBUG,并且完成设置,然后我们就可以在Debug中看到ANDROID_DEBUG了。
4,配置ANDROID_DEBUG,在条件编译符号号写入给定的名称符号,并保存。
5,使用,我们在Debug方式下的话我们的ANDROID并没有启用,但是我们切换到ANDROID_DEBUG下的话ANDROID符号下的代码就被启用了。
-----在Unity使用--------------------------------------BuildSetting ->PlayerSettings ->Scripting Define Symbols
-----Unity预定义宏--------------------------------------
也可以判断Unity版本,目前支持的版本
来自为知笔记(Wiz)
在VS中添加名称符号
在Unity使用
----使用#define 告诉编译器存在给定的符号--------------------------------------#define ANDROID#define IOS#define WPusing System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace CShapeB{ class Test {#if ANDROID #if QD1 #elif QD2 #elif QD3 #endif#elif IOS #if QD1 #elif QD2 #elif QD3 #endif#elif WP#elif ELSE#else#endif }} -----在VS中添加名称符号--------------------------------------1,Debug-->配置管理器。
2,Debug--><新建...>。
3,填写名称ANDROID_DEBUG,并且完成设置,然后我们就可以在Debug中看到ANDROID_DEBUG了。
4,配置ANDROID_DEBUG,在条件编译符号号写入给定的名称符号,并保存。
5,使用,我们在Debug方式下的话我们的ANDROID并没有启用,但是我们切换到ANDROID_DEBUG下的话ANDROID符号下的代码就被启用了。
-----在Unity使用--------------------------------------BuildSetting ->PlayerSettings ->Scripting Define Symbols
-----Unity预定义宏--------------------------------------
平台定义
UNITY_EDITOR | 编辑器调用。 |
UNITY_STANDALONE_OSX | 专门为Mac OS(包括Universal,PPC和Intelarchitectures)平台的定义。 |
UNITY_DASHBOARD_WIDGET | Mac OS Dashboard widget (Mac OS仪表板小部件)。 |
UNITY_STANDALONE_WIN | Windows。 |
UNITY_STANDALONE_LINUX | Linux的独立的应用程序。 |
UNITY_STANDALONE | 独立的平台(Mac,Windows或Linux)。 |
UNITY_WEBPLAYER | 网页播放器(包括Windows和Mac Web播放器可执行文件)。 |
UNITY_WII | Wii游戏机平台。 |
UNITY_IPHONE | iPhone平台。 |
UNITY_ANDROID | Android平台。 |
UNITY_PS3 | PlayStation 3。 |
UNITY_XBOX360 | Xbox 360。 |
UNITY_NACL | 谷歌原生客户端(使用这个必须另外使用UNITY_WEBPLAYER)。 |
UNITY_FLASH | Adobe Flash。 |
UNITY_2_6 | 平台定义为主要版本的Unity 2.6。 |
UNITY_2_6_1 | 平台定义的特定版本1的主要版本2.6。 |
UNITY_3_0 | 平台定义为主要版本的Unity 3.0。 |
UNITY_3_0_0 | 平台定义的特定版本的Unity 3.0 0。 |
UNITY_3_1 | 平台定义为主要版本的Unity 3.1。 |
UNITY_3_2 | 平台定义为主要版本的Unity 3.2。 |
UNITY_3_3 | 平台定义为主要版本的Unity 3.3。 |
UNITY_3_4 | 平台定义为主要版本的Unity 3.4。 |
UNITY_3_5 | 平台定义为主要版本的Unity 3.5。 |
UNITY_4_0 | 平台定义为主要版本的Unity 4.0。 |
UNITY_4_0_1 | 主要版本4.0.1统一的平台定义。 |
UNITY_4_1 | 平台定义为主要版本的Unity 4.1。 |
相关文章推荐
- 在Silverlight 和WPF中使用预编译指令 if..else..endif (译)
- #error/#if defined() && defined() /#elif /#else /#endif
- keil工具c语言MCU程序设计—#if #elif #else #endif 编译不按预期进行
- 每天学一点c++:#if #ifdef #ifndef #elif #else #endif的用法
- 80386(win32汇编) .if .else .endif 伪指令的使用
- C语言的条件编译 #if #elif #endif #ifndef #define
- #ifndef/#define/#endif以及#if defined/#else/#endif使用详解
- C语言中条件编译命令(#if #else #endif)
- if elif else
- if-elif-else的理解
- Shell脚本语法-- if/then/elif/else/fi
- Shell编程中if-elif-else条件分支语句测试
- mysql中存储过程if-else-endif
- Shell脚本语法--if/then/elif/else/fi
- python3 if elif else 分支语句
- shell-007: if elif else
- if...elif...else...fi和case...esac的脚本条件判断式
- Python-if-elif-else语句
- python基础学习02(if...else...elif)
- Python中条件判断 if, elif, else的使用