Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 225 - Developing iOS 8 Apps with Swift - Applying MVC 繋げるところで躓く...

Swiftで遊ぼう!の古い記事-> Life-LOG OtherSide

今日はViewController.swiftファイルを書き換えた。

class ViewController: UIViewController {

 @IBOutlet weak var display: UILabel!
    
 var userIsInTheMiddleOfTypingNumber = false
    
 var brain = CalculatorBrain()

 @IBAction func appendDigit(sender: UIButton) {
  let digit = sender.currentTitle!
  if userIsInTheMiddleOfTypingNumber {
   display.text = display.text! + digit
  } else {
   display.text = digit
   userIsInTheMiddleOfTypingNumber = true
  }
 }
    
 @IBAction func operate(sender: UIButton) {
  if userIsInTheMiddleOfTypingNumber {
   enter()
  }
  if let operation = sender.currentTitle {
   if let result = brain.performOperation(operation) {
    displayValue = result
   } else {
    displayValue = 0
   }
  }
 }
    
 @IBAction func enter() {
  userIsInTheMiddleOfTypingNumber = false
  if let result = brain.pushOperand(displayValue) {
   displayValue = result
  } else {
   displayValue = 0
  }
 }
    
 var displayValue: Double {
  get {
   return
   NSNumberFormatter().numberFromString(display.text!)!.doubleValue
  }
  set {
   display.text = "\(newValue)"
   userIsInTheMiddleOfTypingNumber = false
  }
 }
}

少しCalculatorBrainクラスも書き換えてランすると...

エラー...

f:id:yataiblue:20150215113256j:plain

ランをすると電卓は起動するが、数字のボタンを押したらクラッシュしてXcode6にエラーが流れる。

でもこのエラーの意味が分からない。どうもスタックが上手くできていないようだ。