亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#的預處理指令的全局設計

發布時間:2020-07-17 10:27:48 來源:網絡 閱讀:890 作者:Aonaufly 欄目:編程語言

C#的預處理指令是一個很好的功能 , 比如你的這個系統可能在Windows , IOS , ANDROID等等上面運行 , 你不會是想要告訴我開發3個甚至更多的系統分別為他們服務吧 ? 實際上, 他們的功能都是一樣的 , 只是細微的實現方式不一樣 , 想想看 !!!也許你會說 , 做一個全局控制的狀態機 , 修改狀態來實現控制平臺的效果 , 沒錯 , 這個可以做 , 可以實現 。 但是你把這個系統放在Windows上那么IOS , ANDROID 等功能都在里面只是永遠不會執行 , 這不僅導致系統大 , 而且還沒必要的消耗了內存。完美的解決方案就是C#的預處理指令 , 先來一段代碼 : 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();

        }



    }
}

傳統的方式是這樣的 : 看下面

C#的預處理指令的全局設計

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

C#的預處理指令的全局設計

在項目上右擊->屬性 , 在“生成”中可以配置 這些全局的#define , 在C++應該叫宏吧。相當于宏

注意 : Q 和 WEB_PLAYER 中間用; 隔開

看下結果 :

C#的預處理指令的全局設計

測過都OK了 C#的預處理指令的全局設計

附件:http://down.51cto.com/data/2365375
向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高安市| 遵义市| 合山市| 庆阳市| 白沙| 固镇县| 韶山市| 呼玛县| 永宁县| 红河县| 射洪县| 咸宁市| 宽甸| 潼南县| 开化县| 绿春县| 长春市| 始兴县| 永年县| 岑巩县| 斗六市| 太和县| 六盘水市| 依安县| 洛宁县| 涟源市| 蒲江县| 江油市| 彭州市| 邓州市| 上高县| 石狮市| 瑞安市| 磴口县| 中西区| 祥云县| 监利县| 原平市| 宁强县| 扶沟县| 灵台县|