【发布时间】:2011-08-29 07:15:20
【问题描述】:
我对 C# 还是很陌生,我有一个关于属性的问题。是否可以编写在编译时生成附加代码的自定义属性。例如:
[Forever]
public void MyMethod()
{
// Code
}
变成:
public void MyMethod()
{
while (true)
{
// Code
}
}
【问题讨论】:
-
您当然不想生成无限循环。你的愿景是什么?您希望通过属性使用代码生成来实现什么大想法?
-
这只是一个例子,我想知道它是否可能。但总的来说,无限循环是有用途的。例如,您有一个线程一遍又一遍地做某事。您放入 Thread.Sleep 和一个无限循环并完成。
-
只是一个例子?你为什么不直接写循环呢?你的计划是什么?如果您没有计划,我们将无法帮助您。
-
A) 在我看来,它使代码更具可读性,因为您不需要再添加一层缩进。 B) 为什么我的计划很重要,我只是想知道这是否可能。一个简单的是或否就足够了。
-
我想帮助你。不要惊慌失措。即使这不可能,如果你尝试做其他事情,那个也可能是可能的。这就是为什么它很重要。如果你不想要帮助,我会停止尝试。
标签: c# .net attributes custom-attributes