什么是VB.NET中重载’And’运算符的示例?

因此,对于查找“And”或“Or”等重载运算符的示例而言,Google不是一个好的选择,因为它会尝试将它们解析为搜索查询本身的运算符. MSDN也没有提供如何实现重载And运算符的示例,所以我不确定如何为我的项目正确地重载它.

有没有人至少有一个“和”的例子? “或”或“Xor”(或任何其他人)将是奖金.我不确定我是否需要在我的对象中重载这些操作符,因为我还在构建它们并且还没有计划好.但是有可能被谷歌索引的例子可能有助于拯救很多人的理智……

解决方法

您重载逻辑运算符的方式与重载一元或算术运算符的方式相同.

我实际上无法想到这个目前有用的情况,但是为了举例,这里是一个覆盖And和Or运算符的示例结构:

Public Structure Foo

    Public Shared Operator And(ByVal val1 as Foo,ByVal val2 as Foo) As Foo
        ''#(calculate the logical And of the two specified values here)
        Return New Foo(val1.Bar And val2.Bar,val1.Baz And val2.Baz)
    End Operator

    Public Shared Operator Or(ByVal val1 as Foo,ByVal val2 as Foo) As Foo
        ''#(calculate the logical Or of the two specified values here)
        Return New Foo(val1.Bar Or val2.Bar,val1.Baz Or val2.Baz)
    End Operator

End Structure

这个MSDN page提供了一些其他的例子和进一步的解释.

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...