C# 在C中重写vb.net函数#
我对这些简单的事情有点困惑。如何在C#中重写vb.net函数。我在vb.net类的vb.net中编写了以下代码:C# 在C中重写vb.net函数#,c#,.net,vb.net,overriding,C#,.net,Vb.net,Overriding,我对这些简单的事情有点困惑。如何在C#中重写vb.net函数。我在vb.net类的vb.net中编写了以下代码: Public Overridable Function Test1() As Integer Dim t1 As Integer Return t1 End Function 我想在通过vb.net类继承的C#类中重写它。方法代码如下 public override int Test1() { int t1 =
Public Overridable Function Test1() As Integer
Dim t1 As Integer
Return t1
End Function
我想在通过vb.net类继承的C#类中重写它。方法代码如下
public override int Test1()
{
int t1 = 2;
return t1;
}
我收到错误:没有合适的方法覆盖 这可能是因为要放置公共覆盖,所有类都必须是公共的,相反,您可以尝试编写“受保护的覆盖”,而不是“公共覆盖”。否则,我认为您的问题在堆栈溢出中总是存在的:这可能是因为要放置公共覆盖,所有类都必须是公共的,相反,您可以尝试编写“受保护的覆盖”,而不是“公共覆盖”。否则,我认为您的问题在堆栈溢出中总是存在的:我刚刚测试了这个,它似乎有效。我的代码:
Public Class TestClass
Public Overridable Function Test() As Integer
Dim t1 as Integer
Return t1
End Function
End Class
C#:
一些需要检查的事项:
- C#项目引用了VB项目
- C#文件使用vb名称空间
- C#类实际上来自VB类
CSharpClass:TestClass
Public Class TestClass
Public Overridable Function Test() As Integer
Dim t1 as Integer
Return t1
End Function
End Class
C#:
一些需要检查的事项:
- C#项目引用了VB项目
- C#文件使用vb名称空间
- C#类实际上来自VB类
CSharpClass:TestClass