Swift Typ integer casten zu enum

Habe ich enum Erklärung.

enum OP_CODE {
    case addition
    case substraction
    case multiplication
    case division
}

Und verwenden Sie es in eine Methode:

func performOperation(operation: OP_CODE) {

}

Wir alle wissen, dass, wie können wir nennen dies in der Regel

self.performOperation(OP_CODE.addition)

Aber wenn ich schon in einigen delegieren, wobei der integer-Wert ist nicht vorhersehbar, als wie Sie es nennen.

Beispiel:

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
     self.delegate.performOperation(indexPath.row)
}

Hier, der Compiler wirft einen Fehler Int is not convertible to 'OP_CODE'. Hier versuchte viele Permutationen. Aber nicht in der Lage, um es herauszufinden.

InformationsquelleAutor Kampai | 2014-11-27
Schreibe einen Kommentar