C# 预处理器指令会影响编译过程。主要用途:1.在编译A版本时,可以使用预处理指令禁止编译器编译与与A版本无关的代码。2.在编写提供调试信息的代码时,也可以使用预处理器指令。
#if #else #elif #endif
流程控制。不会被执行的分支的代码在编辑器里会灰掉。
# define #undef
# define或#undef必须放在脚本的第一行,也就是放在所有using XXX;前面。和#if #else #elif #endif一起使用。
#define PI
using System;
class Program
{
static void Main(string[] args)
{
#if (PI)
Console.WriteLine("PI is defined"); //PI不存在,则这条语句不编译
#else
Console.WriteLine("PI is not defined"); //PI存在,则这条语句不编译
#endif
Console.ReadKey();
}
}
// 输出PI is defined
Unity提供了一些define预处理器指令(比如:UNITY_5_3_OR_NEWER表示Unity5.3以及更新的版本),可以专门为你的目标平台编译代码、限制Unity特定版本等。
#if UNITY_EDITOR // will be compiled no matter what Platform is set but only if you click "Play"
Debug.Log("Unity Editor");
#elif UNITY_IOS
Debug.Log("Unity IOS");
#elif UNITY_ANDROID // will be compiled if Platform

本文介绍了C#中的预处理器指令,包括#if、#else、#elif、#endif进行条件编译,#define和#undef用于定义和取消宏,#region和#endregion用于代码折叠,以及#warning和#error显示警告和错误信息。这些指令在处理不同版本代码、提供调试信息和控制编译警告方面发挥重要作用。
最低0.47元/天 解锁文章
515

被折叠的 条评论
为什么被折叠?



