2

したがって、私が抱えている問題は、[UInt8] を必要とする init() に引数を持つオブジェクトがあることです。別の配列から範囲を取得して、それを init で使用できるようにしたいと考えています。例を参照してください。

class Test {

    init(fromArray: [UInt8]) {
    // performs work
    }
}

let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array

let test = Test(fromArray: myStockArray[1...4]) // doesn't work

どうすればこれを機能させることができますか? 私が得るエラーは次のとおりです: タイプ '[UInt8]' の値にタイプ 'CountableClosedRange' のインデックスを付けることはできません

4

1 に答える 1

3

配列に範囲を添字付けしても配列は返されず、これが主な問題です。ArraySlice<UInt8>内部型を持つコンストラクターに型データを設定しようとしてい[UInt8]ます。

このアプローチを試してください:

class Test {

    init(fromArray: [UInt8]) {
        // performs work
    }
}

let myStockArray: [UInt8] = [1,2,3,4,5,6,7,8] // reference array

let test = Test(fromArray: Array(myStockArray[1...4]))
于 2016-10-01T19:53:43.977 に答える