2012-09-20 42 views
1

看看下面的例子:爲什麼不能通過C#中的索引訪問單個System.Array元素?

class MyArray { 
    private Array _array; 

    public MyArray(Array array) { 
     _array = array; 
    } 

    public object this[int index] { 
     get { return _array[index]; } 
     set { _array[index]=value; } 
    } 
} 

這將返回編譯錯誤「無法訪問私有索引‘這個’這裏」

但是,如果_array被聲明爲對象這個功能精細[]。

這是否與值和參考數組之間的差異?

+0

Array對象具有不可預知的維數,編譯器無法檢查您的索引表達式是否正確。 –

回答

0

正如你可以看到類Array的描述:

提供用於創建,操縱,搜索和排序 陣列,從而用作基類的所有陣列的方法在共同的 語言運行時。

該類沒有索引器。如果您正在處理數組,則可以使用object []或使用List [<>

相關問題