.Net预处理器指令

1.最常用的预处理器指令#region #endregion,来定义可在大纲中折叠的代码区域.

#region MyClass def

public class MyClass

{

static void Main()

{

}

}

#endregion

2.定义符号预处理器指令:来定义或取消定义条件编译的符号:

#define:定义符号。

#undef:取消定义符号。

3.条件预处理器指令:#if,#elif, #else,endif.

可以在代码文件的顶部通过#define/#undef 指令定义符号,用于指定程序代码编译的条件,可以使用 #if 、#elif 、#endif来测试符号.

当您将#define定义的符号用作传递给 #if 指令的表达式时,此表达式的计算结果为 true,将#undef定义的符号用作传递给 #if 指令的表达式时,此表达式的计算结果为 false.

符号可用于指定编译的条件。 可通过 #if 或 #elif 测试符号。 还可以使用 ConditionalAttribute 来执行条件编译,如下例所示:

#define CalledTestM1

#undef CalledTestM2

#define DEBUG

#undef TRACE

using System;

public class TestDefine

{

static void Main()

{

//调用TestConditionalM1

TestConditionalM1();

//不调用TestConditionalM2

TestConditionalM2();

#if (DEBUG)

Console.WriteLine("Debugging is enabled.");

#endif

#if TRACE

Console.WriteLine("Tracing is enabled.");

#endif

}

Conditional("CalledTestM1")

static void TestConditionalM1() { Console.WriteLine("Conditional M1 is Called"); }

Conditional("CalledTestM2")

static void TestConditionalM2() { Console.WriteLine("Conditional M2 is Called"); }

}

// Output:

// Conditional M1 is Called

// Debugging is enabled.

相关推荐
qz_Serene5 分钟前
C++:类和对象(上)
开发语言·c++
唐青枫12 分钟前
别把 ImmutableArray 当成只读 List:C#.NET 不可变数组深入详解
c#·.net
西安景驰电子33 分钟前
《PTP精确时间协议系列》第一篇:从原理到应用,全面解读IEEE 1588
linux·运维·服务器·开发语言·网络·windows·php
ctlover1 小时前
Python文件操作
开发语言·python
luj_17681 小时前
塔防牌:策略与卡牌的智慧碰撞
服务器·c语言·开发语言·经验分享·算法
wuyk5551 小时前
3.链表:用指针串联的动态数据结构
c语言·开发语言·数据结构·链表
weixin_383196472 小时前
java基础面试题@Autowired和@Resource区别
java·开发语言
言乐62 小时前
Python游戏水平测试辅助系统2
开发语言·windows·python·游戏·django
我不是疯子是傻子3 小时前
Qt 实时曲线卡顿优化:从QPainter到OpenGL的3级加速实战
开发语言·qt
zlinear数据采集卡3 小时前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#