有没有办法在C#中创建实际的关键字。比如将对象x转换为像int这样的数据类型?我想我要问的是C#的typedef有什么用,如果没有,我怎么能真正制作我自己的类型:
public static crap Main(string[] args)
{
// Note 'crap' and not 'void'!
}
答案 0 :(得分:11)
您可以为类(如Int32或String)创建同义词,但不能创建int或void,因为它们是关键字。语法如下所示:
using foo = System.Int32;
答案 1 :(得分:2)
C#故意不提供C / C ++样式宏(使用#define
)。您无法发明这些语言功能并将语言扩展到类型之外。他们离开这个功能有很好的理由。如果您确实需要这些功能,可以始终通过C预处理器运行C#源文件,并使用C#编译器编译生成的文件。您还可以依赖环境提供的其他模板功能(最有可能是Visual Studio T4 engine)。