3

我希望根据编译模式使属性成为条件。

例如,这MyFunction()是用属性装饰的MyAttribute()

<MyAttribute()>  
Private Function MyFunction() As Boolean
....
End Function

但是,我希望在 DEBUG 为真时应用该属性,这听起来像是使用编译器指令的好地方:

#If Debug Then
<MyAttribute()>
#End If
Private Function MyFunction() As Boolean
....
End Function

然而,这似乎需要一个连续字符(_),这反过来会影响#End If(意外的标记)。

我将如何实现我想要的?

4

1 回答 1

3

最坏的情况,你可以这样做:

#If Debug Then
<MyAttribute()>
Private Function MyFunction() As Boolean
#Else
Private Function MyFunction() As Boolean
#End If

这可能是由于在预处理之前发生了行继续处理。例如,这是有效的:

#If 1 = _
  1 Then

#End If

在您的情况下,您期望在预处理之后发生线路延续。

于 2013-01-17T15:08:02.943 回答