Is there a way to get local state variables to be unique for different
objects? See my example bank account:
class Acc
@@balance = 100
def withdraw( amount )
if @@balance >= amount
@@balance = @@balance - amount
else
“Insufficient Funds”
end
end
@@balance
end
irb(main):012:0> check1 = Acc.new
=> #Acc:0xb7dc2f14
irb(main):013:0> check1.withdraw 50
=> 50
irb(main):014:0> check1.withdraw 40
=> 10
irb(main):015:0> check1.withdraw 25
=> “Insufficient Funds”
This is great - but if I create a new object ‘check2’ it doesn’t start
with a new balance of 100. What am I doing wrong here?
irb(main):016:0> check2 = Acc.new
=> #Acc:0xb7db08c8
irb(main):017:0> check2.withdraw 40
=> “Insufficient Funds”
I wanted this to return 60