CLR如何通过C#,VB.Net中的方法调用,

Tu *_*ran 1 .net clr

我不知道如何解释我的问题,请以示例形式接受:

我用C#语言编写了一个库,其方法如下:

public object GetValueAt(int idx) {
    return arr[idx];
}
Run Code Online (Sandbox Code Playgroud)

然后我在VB.Net中使用它,当然在C#和VB.Net之间有一个不同的索引.因此,如果我调用该方法idx = 6,CLR如何知道我尝试访问的对象(它idx = 5在C#上有)?

这只是我的例子,那么.Net中现有的库怎么样?

Dam*_*ver 6

唯一的区别我知道你可能认为C#和VB.Net之间的索引差异在于声明一个数组.

在VB.Net中,您声明数组的上限:

Dim x(10) as Int32
Run Code Online (Sandbox Code Playgroud)

声明一个包含11个元素的数组,从0开始,以10结尾.在C#中,声明数组的长度:

Int32 []x = new Int32[10];
Run Code Online (Sandbox Code Playgroud)

声明一个包含10个元素的数组,从0开始,以9结尾.

具有相同索引值的索引访问在两种语言中的工作方式相同.