Rubyのクラスについて学ぶためにこのページに行きました。そのページのコードは次のとおりです。
class Customer
@@no_of_customers=0
def initialize(id, name, addr)
@cust_id=id
@cust_name=name
@cust_addr=addr
end
def display_details()
puts "Customer id #@cust_id"
puts "Customer name #@cust_name"
puts "Customer address #@cust_addr"
end
def total_no_of_customers()
@@no_of_customers += 1
puts "Total number of customers: #@@no_of_customers"
end
end
クラス変数を意味することは理解していますが、メソッド(コンストラクター)で@@
変数を作成し、クラス変数であるかのように別のメソッド内で使用する方法がわかりません。initialize
これはどのように可能ですか?コンストラクターで定義できる場合、クラス変数を定義する意味は何ですか?