3

Observable パターンの通過儀礼のコンテキストで Swift を探索するだけです。私が探求したかったのは、構文糖衣のために前置演算子を実装することでした。

class Observable<T> {
    var value:T
    init(_ v:T) {
        value = v
    }
}

postfix operator &* { }

postfix func &* (arg:Observable<T>) -> T {
    return arg.value
}

ただし、コンパイラはそれ-> Tuse of an undeclared type. ジェネリックを戻り値の型として本当に使用できないのでしょうか? ここで何か他のことが起こっていますか?

4

1 に答える 1

6

関数をジェネリックにするだけです。

postfix func &*<T>(arg:Observable<T>) -> T {...}

あなたが書いたようにT、型パラメーターではなく、型自体であることが期待されます。

于 2015-12-16T19:29:23.853 に答える