|  | 分類:[C#]
 
 
 VC#
.NET Framework 4
WindowsXP Sp3
いつも楽しく拝見させて頂いております。
最近になってVB6→VB.NET(少し)→現在C#にトライしている初心者です。
分からないことだらけで、試行錯誤しながら頑張っています。
今回、配列の配列(ジャグ配列)についてお伺いさせていただきます。
下はVB.NETのジャグ配列(模擬)です。
        Dim parArray() As Object
        Dim cldArray(3) As Object
        Dim parNum ,cldNum As Integer
        '大項目要素数分ループ
        For parNum = 0 To UBound(DataArray)  '←UBound(DataArray)の値は仮に4として下さい。
            '小項目要素数分ループ
            For cldNum = 0 To UBound(cldArray)
                '小項目要素を格納
                cldArray(cldNum) = "小項目" & cldNum
            Next cldNum
            '配列拡大
            ReDim Preserve parArray(parNum)
            '配列に配列をコピー
            parArray(parNum) = cldArray.Clone
        Next parNum
このVB.NETで記述したものをC#に移植しようと思い下を作成しましたが、
最後の「配列に配列をコピー」ヶ所で、
『型 'object' を 'object[]' に暗黙的に変換できません。明示的な変換が存在します。
(cast が不足していないかどうかを確認してください)』とエラー表示が出てしまいます。
        int parNum = 0;
        int cldNum = 0;
        object[][] parArray=new object [0][];
        object[] cldArray= new object[3];
        //大項目要素数分ループ
        for(parNum = 0; parNum < DataArray.Length; ++parNum)   //←DataArray.Lengthの値は仮に4として下さい。
        {
            //小項目要素数分ループ
            for(cldNum = 0; cldNum < cldArray.Length; ++cldNum)
            {
                //小項目要素を格納
                cldArray[cldNum] = "小項目" + cldNum;
            }
            //配列拡大
            Array.Resize(ref parArray, parNum+1);
            //配列に配列をコピー
            parArray[parNum] = cldArray.Clone();
        }
どうかご教示いただけますようにお願い致します。
 |