您当前的位置: 首页 >  c#

Peter_Gao_

暂无认证

  • 0浏览

    0关注

    621博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

C# 宏定义 define 预处理器指令

Peter_Gao_ 发布时间:2021-12-30 17:12:56 ,浏览量:0

 

 

Unity系统原来已经帮你定义好了很多的宏,可以直接用

//如果你的平台已经被你switch platform 你的那个平台过后,对应的输出打印是彩色的会编译,否则是灰色的不会编译

#if UNITY_IPHONE         Debug.Log("UNITY_IPHONE"); #elif UNITY_ANDROID         Debug.Log("UNITY_ANDROID"); #elif UNITY_EDITOR         Debug.Log("UNITY_EDITOR"); #endif

#if UNITY_4_1         Debug.Log("UNITY_4"); #elif UNITY_5         Debug.Log("UNITY_5"); #endif

 

如何自定义宏:

1、使用 #define 创建的符号的作用域是在其中定义该符号的文件。如以下示例所示,必须将 #define 指令放在文件顶部。

 

 2、或者你需要添加在Unity中的PlayerSettings里面的Scripting Define Symbols 下的输入框里面,可以添加多个,之间有";"隔开例如SDK91

宏定义的使用场合:

   在程序中我们想要根据不同的运行环境去执行不同的代码时使用。比如我们在PC上和安卓上需要执行不同的代码,我们就可以使用Unity自带的宏定义来区分。

Conditional:对于使用“[Conditional("xxx")]”定义的方法而言,该方法是否被执行取决于该方法的调用方是否满足“xxx”环境,如果满足则会执行该方法,否则不执行

#if...#endif:使用这种方式定义的,在编译时只会把满足条件的代码编译到最终的程序集中,与外部调用方是否满足条件无关

 

C#---#define条件编译 - 我喜欢大白 - 博客园C#中宏定义使用“Conditional”和“#if....#endif”的区别_啸风轩-CSDN博客_c# 宏

Unity中的宏定义_画个小圆儿的博客-CSDN博客_unity 使用宏定义

 

关注
打赏
1664521772
查看更多评论
立即登录/注册

微信扫码登录

0.0378s