2017-04-20 3 views
0

이것은 쉽게 대답 할 수 있지만 정확히 무엇을했는지 찾을 수 없으므로 주석으로 전체 문장을 게시하려고합니다. 이것은 카드 덱에 다차원 배열을 사용하여 만들고있는 카드 게임의 주 파일입니다.내 변수가 선언되었지만 신속하게 사용할 수 없습니다.

class GameViewController: UIViewController 
{ 

var royal = false 
var HandMe: [[String]] = [[" ", " ", " ", " ", " "]] 
var turn = "Computer" 
var turns = 1 
var Pot: [[String]] = [[" ", " ", " ", " ", " "]] 
var Cards = [ 
    ["Queen", "Spades", "2", "yes", "Queen_Spades.jpg"], 
    ["King", "Spades", "3", "yes", "King_Spades.jpg"], 
    ["Jack", "Spades", "1", "yes", "Jack_Spades.jpg"], 
    ["Ace", "Spades", "4", "yes", "Ace_Spades.jpg"], 
    ["2", "Spades", "1", "no", "2_Spades.jpg"], 
    ["3", "Spades", "1", "no", "3_Spades.jpg"], 
    ["4", "Spades", "1", "no", "4_Spades.jpg"], 
    ["5", "Spades", "1", "no", "5_Spades.jpg"], 
    ["6", "Spades", "1", "no", "6_Spades.jpg"], 
    ["7", "Spades", "1", "no", "7_Spades.jpg"], 
    ["8", "Spades", "1", "no", "8_Spades.jpg"], 
    ["9", "Spades", "1", "no", "9_Spades.jpg"], 
    ["10", "Spades", "1", "no", "10_Spades.jpg"], 
    ["Queen", "Hearts", "2", "yes", "Queen_Hearts.jpg"], 
    ["King", "Hearts", "3", "yes", "King_Hearts.jpg"], 
    ["Jack", "Hearts", "1", "yes", "Jack_Hearts.jpg"], 
    ["Ace", "Hearts", "4", "yes", "Ace_Hearts.jpg"], 
    ["2", "Hearts", "1", "no", "2_Hearts.jpg"], 
    ["3", "Hearts", "1", "no", "3_Hearts.jpg"], 
    ["4", "Hearts", "1", "no", "4_Hearts.jpg"], 
    ["5", "Hearts", "1", "no", "5_Hearts.jpg"], 
    ["6", "Hearts", "1", "no", "6_Hearts.jpg"], 
    ["7", "Hearts", "1", "no", "7_Hearts.jpg"], 
    ["8", "Hearts", "1", "no", "8_Hearts.jpg"], 
    ["9", "Hearts", "1", "no", "9_Hearts.jpg"], 
    ["10", "Hearts", "1", "no", "10_Hearts.jpg"], 
    ["Queen", "Diamonds", "2", "yes", "Queen_Diamonds.jpg"], 
    ["King", "Diamonds", "3", "yes", "King_Diamonds.jpg"], 
    ["Jack", "Diamonds", "1", "yes", "Jack_Diamonds.jpg"], 
    ["Ace", "Diamonds", "4", "yes", "Ace_Diamonds.jpg"], 
    ["2", "Diamonds", "1", "no", "2_Diamonds.jpg"], 
    ["3", "Diamonds", "1", "no", "3_Diamonds.jpg"], 
    ["4", "Diamonds", "1", "no", "4_Diamonds.jpg"], 
    ["5", "Diamonds", "1", "no", "5_Diamonds.jpg"], 
    ["6", "Diamonds", "1", "no", "6_Diamonds.jpg"], 
    ["7", "Diamonds", "1", "no", "7_Diamonds.jpg"], 
    ["8", "Diamonds", "1", "no", "8_Diamonds.jpg"], 
    ["9", "Diamonds", "1", "no", "9_Diamonds.jpg"], 
    ["10", "Diamonds", "1", "no", "10_Diamonds.jpg"], 
    ["Queen", "Clubs", "2", "yes", "Queen_Clubs.jpg"], 
    ["King", "Clubs", "3", "yes", "King_Clubs.jpg"], 
    ["Jack", "Clubs", "1", "yes", "Jack_Clubs.jpg"], 
    ["Ace", "Clubs", "4", "yes", "Ace_Clubs.jpg"], 
    ["2", "Clubs", "1", "no", "2_Clubs.jpg"], 
    ["3", "Clubs", "1", "no", "3_Clubs.jpg"], 
    ["4", "Clubs", "1", "no", "4_Clubs.jpg"], 
    ["5", "Clubs", "1", "no", "5_Clubs.jpg"], 
    ["6", "Clubs", "1", "no", "6_Clubs.jpg"], 
    ["7", "Clubs", "1", "no", "7_Clubs.jpg"], 
    ["8", "Clubs", "1", "no", "8_Clubs.jpg"], 
    ["9", "Clubs", "1", "no", "9_Clubs.jpg"], 
    ["10", "Clubs", "1", "no", "10_Clubs.jpg"] 
    ] 
    var last: UInt32 = UInt32(Cards.endIndex - 1)//instance member 'Cards' cannot be used on type 'GameViewController' 
    var random = Int(arc4random_uniform(last) + 1)//instance member 'last' cannot be used on type 'GameViewController' 
    var TopCard = UIButton(type: .Custom) 
    let image = UIImage(named: Pot[Int(last)][4])//instance member 'Pot' cannot be used on type 'GameViewController' 
    TopCard.setImage(image, forState: .Normal) 
+1

속성을 사용하는 코드는 메서드 – dan

+1

또는 계산 된 속성 내에 있어야합니다. – JAL

+0

@JAL은 기본적으로 계산 된 속성이 아닙니다. – Honey

답변

0

이전에 정의한 속성을 사용하는 코드는 메서드 내부 또는 이니셜 라이저 내부 또는 계산 된 속성 내에 있어야합니다.

class GameViewController: UIViewController { 
    var royal = false 
    var HandMe: [[String]] = [[" ", " ", " ", " ", " "]] 
    var turn = "Computer" 
    var turns = 1 
    var Pot: [[String]] = [[" ", " ", " ", " ", " "]] 
    var Cards = //huge array 
    var last: UInt32 
    var random: Int 
    var TopCard = UIButton(type: .Custom) 
    let image: UIImage 

    init() { 
    last = UInt32(Cards.endIndex - 1) 
    random = Int(arc4random_uniform(last) + 1) 
    image = UIImage(named: Pot[Int(last)][4]) 
    TopCard.setImage(image, forState: .Normal) 
    } 
} 
+0

'init' 메소드에서 더 잘 수행하고 있거나 계산 된 특성을 수행하고 있습니까? – Honey

+0

이 경우 객체가 설정되기 때문에'init'을 사용하는 것이 좋습니다. –

0

밖으로 나옵니다. 양식이로드되기 전에 나는이 모든 혼란을 선언했습니다. 그게 왜 내가 백만 오류가 있었는지! 답변 주셔서 감사합니다!

관련 문제