C#的預處理指令是一個很好的功能 , 比如你的這個系統可能在Windows , IOS , ANDROID等等上面運行 , 你不會是想要告訴我開發3個甚至更多的系統分別為他們服務吧 ? 實際上, 他們的功能都是一樣的 , 只是細微的實現方式不一樣 , 想想看 ?。。∫苍S你會說 , 做一個全局控制的狀態機 , 修改狀態來實現控制平臺的效果 , 沒錯 , 這個可以做 , 可以實現 。 但是你把這個系統放在Windows上那么IOS , ANDROID 等功能都在里面只是永遠不會執行 , 這不僅導致系統大 , 而且還沒必要的消耗了內存。完美的解決方案就是C#的預處理指令 , 先來一段代碼 : 
站在用戶的角度思考問題,與客戶深入溝通,找到景泰網站設計與景泰網站推廣的解決方案,憑借多年的經驗,讓設計與互聯網技術結合,創造個性化、用戶體驗好的作品,建站類型包括:成都網站設計、成都做網站、企業官網、英文網站、手機端網站、網站推廣、域名與空間、雅安服務器托管、企業郵箱。業務覆蓋景泰地區。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Mymc
{
class Program
{
//a ss = new a();
static void Main(string[] args)
{
#if (A)
Console.WriteLine("A");
#elif (B)
Console.WriteLine("B");
#else
Console.WriteLine("C");
#endif
#if (WEB_PLAYER)
Console.WriteLine("這是網頁游戲");
#elif (IOS_PLAYER)
Console.WriteLine("Apple平臺");
#elif (ANDROID_PLAYER)
Console.WriteLine("安卓平臺");
#else
Console.WriteLine("其他平臺");
#endif
#if DEBUG
Console.WriteLine("處于Debug模式");
#endif
Console.ReadLine();
}
}
}傳統的方式是這樣的 : 看下面

用#define但是這個有個缺陷 : 你做的每一個類如果要有區分的話都要加 : #define WEB_PLAYER , 累死你 。我們可以不加這 , 用VS編譯的時候加 。 方案如下 :先上圖

在項目上右擊->屬性 , 在“生成”中可以配置 這些全局的#define , 在C++應該叫宏吧。相當于宏
注意 : Q 和 WEB_PLAYER 中間用; 隔開
看下結果 :

測過都OK了 
分享名稱:C#的預處理指令的全局設計
地址分享:http://www.yijiale78.com/article2/jooeic.html
成都網站建設公司_創新互聯,為您提供網站排名、App開發、外貿建站、域名注冊、網站建設、網站改版
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯