Monotouch编译器指令,如果调试

时间:2010-11-23 02:23:56

标签: c# xamarin.ios compiler-directives

在我的MonoTouch应用程序中,如何在调试模式下输入#compiler指令以包含代码?

1 个答案:

答案 0 :(得分:12)

MonoDevelop默认在创建解决方案时设置DEBUG定义,因此您可以使用两件事:您可以在用于检测代码的方法上使用[Conditional(“DEBUG”)]属性,并且可以使用标准if您的来源中有#DEBUG。

像这样:

[Conditional ("DEBUG")]
void Log (string msg)
{
    Console.WriteLine (msg);
}

void Foo ()
{
    Log ("Start");
    ..
    Log ("End");
}

条件属性的好处在于,如果未设置开关,编译器将在编译时删除调用,并且它比使用以下内容乱丢源代码更漂亮:

#if DEBUG
Console.WriteLine ("start");
#endif