Employee.cs
class Employee: # Visitor::ConcreteElement def __init__(self, name, salary, vDays, sDays): self.name = name self.salary = salary self.sickDays = sDays self.vacDays = vDays
def accept(self, v):
source = "v.visit_%s(self)"%self.__class__.__name__
eval(source) ; print source
《Note》参考文献との違い
- 引数の型で処理を選択する代わりに、メソッド名に実行時の型情報を埋め込みます。