zoukankan      html  css  js  c++  java
  • Conditional特性用法

      说明:根据预处理标识符执行方法。Conditional 特性是 ConditionalAttribute 的别名,可应用于方法或属性类。相对于#if和#endif,更灵活更简洁和不易出错。
    例如:

    #define CONDITIONA
    
    using System;
    using System.Collections.Generic;
    using System.Diagnostics;
    
    namespace ConsoleApplication2
    {
        class Program
        {
            static void Main(string[] args)
            {
                Test1();
                Test2();
                Console.ReadKey();
            }
    
            [Conditional("CONDITIONA")]
            public static void Test1()
            {
                Console.WriteLine("Test1");
            }
    
            public static void Test2()
            {
                Console.WriteLine("Test2");
            }
        }
    }

      这时Test1和Test2都将被执行,如果注释掉#define CONDITIONA,Test1将不会被执行。
      也可以同时定义多个Conditional特性,这时多个特性之间的关系为或:

    class Program
        {
            static void Main(string[] args)
            {
                Test1();
                Test2();
                Console.ReadKey();
            }
    
            [Conditional("CONDITIONA"), Conditional("CONDITIONB")]
            public static void Test1()
            {
                Console.WriteLine("Test1");
            }
    
            public static void Test2()
            {
                Console.WriteLine("Test2");
            }
        }
     如果要获得逻辑与效果,需要将所需执行代码全部放到Test2中执行:
    class Program
        {
            static void Main(string[] args)
            {
                Test1();
                Console.ReadKey();
            }
    
            [Conditional("CONDITIONA")]
            public static void Test1()
            {
                Test2();
            }
            [Conditional("CONDITIONB")]
            public static void Test2()
            {
                Console.WriteLine("Test1");
                Console.WriteLine("Test2");
            }
        }
    
    
  • 相关阅读:
    准备学习FLEX目前心理状态篇
    Jeffrey Richter 大师 ,这次交流收获不少。
    Scrum框架 转贴
    换工作中......
    以后多参加些论坛,交流交流思想。
    机会在哪?
    2011年要比2010年更加努力!!!
    2012,处理考验我的一年,2013,继续学习快速成长的一年
    终于买了iPad,激动。。。。
    CSP认证
  • 原文地址:https://www.cnblogs.com/infly123/p/3806053.html
Copyright © 2011-2022 走看看