2017-09-08 5 views
1

私は2つのクラスを使って、アカウントから金額を加算して差し引くためのバンキングシステムを作成しています。私は、取引金額とタイプを入力するためのクラスと、トランザクションが完了した後のアカウントからの金額の加算や控除のような、数学を扱うために使用するクラスの2つのクラスを持っています。他のクラスの変数にアクセスしてクラス内の計算を実行する方法は?

class TransactionManager { 
    var bal: Int 
    init(bal: Int = 0) { 
     bal = bal 
    } 

    func addCredit(entry: Transaction) -> (res: Bool, bal: Int) { 
     return (true, balance) 
    } 

    func deductCredit(entry: Transaction) -> (res: Bool, balance: Int){ 
     return (true, balance) 
    } 
} 

そして、私の他のクラスは、私が呼ぶときように、今、私は自分のコードを変更したい

let transactionManager = TransactionManager(balance: 25000) 
let transaction = Transaction(credits: 10000, description: "Withdraw") 
let a = transactionManager(entry: transaction) 

のようないくつかのエントリを追加しようとしている取引

class Transaction { 
    let description: String 
    let credits: Int 

    init(credits: Int, description: String = "") { 
     self.credits = credits 
     self.description = description 
    } 
} 

のエントリのために使用されていますこの追加または控除の方法私は合計残高を追加/減額する必要があります。

取引クラスのクレジット数にアクセスして、それを使用して実際の残高に金額を加算するか、金額を減算するかを計算するにはどうすればよいですか?

+2

ような何かをしたいと思いますか?おそらく、あなたはスウィフトの本を読んでいる時間を過ごすべきでしょう。変数からプロパティにアクセスするのはかなり基本的です。 – rmaddy

+0

FYI - '' bal = bal'という行はコンパイルされません。あなたは 'self.bal = bal'を望みます – rmaddy

答えて

-1

は、私はあなたがあなたの前の質問の答えを読みました。この

func addCredit(entry: Transaction) -> (res: Bool, bal: Int) { 
    self.bal += entry.credits 
    return (true, self.bal) 
} 

func deductCredit(entry: Transaction) -> (res: Bool, balance: Int){ 
    self.bal -= entry.credits 
    return (true, self.bal) 
} 
+6

これらのどれもトランザクションが有効であることを検証しないのはなぜですか?すべての結果に対して 'true'をハードコードすると、戻り値の' res'部分のポイントは何ですか? – rmaddy

関連する問題