区块链技术博客
www.b2bchain.cn

为什么VB.net和C#之间的行为不同? – c#程序员分享

本文介绍了为什么VB.net和C#之间的行为不同? – c#程序员分享,有助于帮助完成毕业设计以及求职,是一篇很好的资料。

对技术面试,学习经验等有一些体会,在此分享。

至于我可以告诉下面的两个示例在功能方面是相同的。

C#

namespace ConsoleApplication4 {  class Program  {   static void Main(string[] args)   {    var x = new Example(12);    var y = new Example(34);    var z = Example.Examples.One;   }  }  class Example  {   public static class Examples   {    public static readonly Example Zero = new Example(0);    public static readonly Example One = new Example(1);   }   public readonly Double Value;   public Example(Double Value)   {    this.Value = Value;   }   public static Example Add(Example x, Example y)   {    return new Example(x.Value + y.Value);   }  } } 

VB.net

Option Strict On Module Module1      Sub Main()      Dim x=New Example(12)     Dim y = New Example(34)     Dim z=  Example.Examples.One     End Sub  End Module  Public Class Example    Public  Class Examples     Public Shared ReadOnly Zero As Example     Public Shared ReadOnly One As Example     Public Shared ReadOnly Two As Example     Public Shared ReadOnly MinusOne As Example     Shared Sub new()       Zero=New Example(0)       One= New Example(1)       Two = New Example(2)       MinusOne = New Example(-1)     End Sub   End Class   Public ReadOnly Value As Double   Public Sub New(Value As Double)     Me.Value=Value   End Sub   Public Shared Function Add(x As Example,y As Example) As Example     Return New Example(x.Value+y.Value)   End Function End Class 

那么,为什么我在点之后仅获得C#中的实例方法(请参见下文)

z = Example.Examples.One. 

和在VB.net

Dim z = Example.Examples.One. 

我也得到了Examples

到底是怎么回事?为什么会有所不同?

参考方案

出于兼容性原因,VB.Net允许您通过实例限定符访问Sharedstatic)方法。
不要做令人困惑。

我正在尝试使用动态语言运行时/ IronPython来简单地使用命令参数运行.py脚本,然后获取标准输出。这是用于执行尚未在C#中实现的membase TAP协议:public class MembaseTap { public void Tap() { var pyEngine = Python.CreateEngine(); pyEngine.Execu…

给你一个装满水的 8 升满壶和两个分别是 5 升、3 升的空壶,请想个优雅的办法,使得其中一个水壶恰好装 4 升水,每一步的操作只能是倒空或倒满。题解:“` .js/** * 思路: * 每个容器有两个选择,比如:A,可以倒入B,或者倒入C * 同样,B可以倒入A,也可以倒入C * 那么每次就有8种可能 * * 每产生一种可能,顺着这种可能的结果,继续去遍…

可以是三进制么?二进制有什么好处?题解:为什么叫电子计算机?算盘应该没有二进制

这个是我刚毕业的时候,一个真实的面试题,这是一个开放题。题目描述:想办法,将一个城市的所有灯泡数量统计出来。题解:费米估算法1、如果某个城市常驻人口有1000万2、假设每5人居住在一套房里,每套房有灯泡5只,那么住宅灯泡共有1000万只3、假设公众场所每10人共享一只灯泡,那么共有100万只4、主要的这两者相加就得出了1100万只当然实际上这是估算的,具体应…

一个圆盘被涂上了黑白二色,两种颜色各占一个半圆。圆盘以一个未知的速度、按一个未知的方向旋转。你有一种特殊的相机可以让你即时观察到圆上的一个点的颜色。你需要多少个相机才能确定圆盘旋转的方向?题解:可以用一个相机即可

赞(0) 打赏
部分文章转自网络,侵权联系删除b2bchain区块链学习技术社区 » 为什么VB.net和C#之间的行为不同? – c#程序员分享
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

b2b链

联系我们联系我们