C#预处理器指令
#define和#undef
#define DEBUG
告诉编译器存在给定名称的符号。类似声明一个变量,但这个变量没有真正的值,只是存在。
#undef DEBUG
和#define正好相反--删除符号的定义,如果符号不存在,没有任何作用。如果符号存在,define不起作用。必须把#define和#undef命令放在C#源文件的开头位置,在声明要编译的任何对象的代码之前
#if、#elif、#else、#endif
点击查看代码
int DoWork(double x)
{
#if DEBUG
WriteLine($"x is {x}")
#endif
编译器遇到#if指令,先检查相关符号是否存在,存在就执行编译,否则会忽略所有代码。执行完#if,完成调试后,会把#define指令注释掉,可执行文件会变小。也可以嵌套#if块。还支持逻辑运算符“!”、“==”、“!=”、“||”。
#warning和#error
编译器遇到#warning,会向用户显示指令后面的文本
遇到#error会向用户显示后面的文本,并立即退出编译,不会生成IL代码
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!