大家看看这两个函数功能上有什么不同的地方
1.
Private Function GeteachQty(ByVal obj As Object) As Integer
If IsDBNull(obj) = False Then
Return Convert.ToInt32(obj)
Else
Return 0
End If
End Function2.
Private Function GeteachQty(ByVal obj As Object) As Integer
Return IIF(IsDBNull(obj),0,Convert.ToInt32(obj))
End Function
相同,不同,相同,不同........
我认为不同,根据我的测试结果,我猜测代码2更接近代码3
3.
Private Function GeteachQty(ByVal obj As Object) As Integer
Dim resule as Integer=Convert.ToInt32(obj)
If IsDBNull(obj) = False Then
Return resule
Else
Return 0
End If
End Function
如果我的猜测没错的活,那么IF与IIF就有着本质上的区别,根本不能互换,各位在使用过程中一定要小心。
1.
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
相同,不同,相同,不同........
我认为不同,根据我的测试结果,我猜测代码2更接近代码3
3.
![](/Images/OutliningIndicators/ExpandedBlockStart.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/InBlock.gif)
![](/Images/OutliningIndicators/ExpandedBlockEnd.gif)
如果我的猜测没错的活,那么IF与IIF就有着本质上的区别,根本不能互换,各位在使用过程中一定要小心。