使用“#define IDENTIFIER String”在C#中使用别名?

时间:2012-10-04 06:30:08

标签: c# c-preprocessor

在C ++中,可以使用这个表达式:

#define IDENTIFIER NAME

例如。 #define MY_NAME "Gideon"

这在C#中同样可行吗?

3 个答案:

答案 0 :(得分:5)

没有。 #define只能用于定义要使用#if进行测试的标志(然后仅在文件的开头)。

改为使用常量字符串:

const string MY_NAME = "Gideon";

答案 1 :(得分:1)

那些是完全不同的东西。在C++中,基本上替换字符串MY_NAME,并为其分配表达式 "Gideon"

C#中的情况也是如此,如果是常规表达,但在C++中你可以定义完整的宏(函数)到MY_NAME,以便让它们运行,这在C#

中是不可能的

答案 2 :(得分:-2)

我不是说你应该这样做,或者说它会像你期望的那样工作,但没有什么可以阻止你尝试在你的代码上使用C预处理器(例如GNU cpp)。