32688


Corelocationでiphoneの磁器センサを使い方角を数値化して  
その数値がある範囲にある間、特定の処理をしたいのですが  
磁器センサの値と、レンジが比較できなくて困っています  
コードは大まかに以下のような感じです

[code]

    var CDR:Int = Int(newHeading.magneticHeading) //磁器センサの値が入り続ける
    
    while CDR == 0...45{ //ここでIntとCountableClosedRange<Int>を比べるなと怒られる
       print("例")
    }
    
[/code]

このような処理をしたい場合どう比較すれば良いですか？


CC BY-SA 3.0
2017-02-15T12:32:50.850
32686
2017-02-15T13:14:37.407
2017-02-15T13:14:37.407
5519
19087
question
swift
Int型とCountableClosedRange<Int>を比較したい


パターンマッチ演算子（`~=`）を使います。

[code]

    while 0...45 ~= CDR {
        ...
    }
    
[/code]

または`case ...`を使って書くこともできます。（`case
...`は内部的にパターンマッチ演算子（`~=`）が使用されます。上記のように書くのと同じことです。

[code]

    while case 0...45 = CDR {
        ...
    }
    
[/code]


CC BY-SA 3.0
2017-02-15T13:14:21.463
32688
2017-02-15T13:14:21.463
5519
32686
answer