Klassen in VBScript: Warum machen diese beiden Beispiele dasselbe?
Ich habe diesen Code in dieser StackOverFlow-Frage gefunden.Wörterbuch der Objekte / Klassen in VBScript.
Meine Frage ist, warum macht diese "kurze" Klasse das Gleiche wie diese "lange" Klasse? Warum sollte man sich überhaupt die Mühe machen, die lange Klasse zu programmieren? Könnte die Kurzklassenversion mit zusätzlichen Methoden innerhalb derselben Klasse verwendet werden? Vielen Dank!
Kurze Klasse
Class employeeclass
Public first, last, salary
End Class
Lange Klasse
Class employeeclass
Private m_first
Private m_last
Private m_salary
Public Property Get first
first = m_first
End Property
Public Property Let first(value)
m_first = value
End Property
Public Property Get last
last = m_last
End Property
Public Property Let last(value)
m_last = value
End Property
Public Property Get salary
salary = m_salary
End Property
Public Property Let salary(value)
m_salary = value
End Property
End Class
Vollständiges Skript mit der kurzen Klasse. Ersetzen Sie jedoch einfach die kurze Klasse durch die lange Klasse, um das gleiche Ergebnis zu erhalten.
Class employeeclass
Public first, last, salary
End Class
Dim employeedict: Set employeedict = CreateObject("Scripting.Dictionary")
Dim employee: Set employee = new employeeclass
With employee
.first = "John"
.last = "Doe"
.salary = 50000
End With
employeedict.Add "1", employee
Set employee = new employeeclass
With employee
.first = "Mary"
.last = "Jane"
.salary = 50000
End With
employeedict.Add "3", employee
Dim employeedetails: Set employeedetails = employeedict.Item("1")
WScript.Echo "Name: " & employeedetails.first & " " & employeedetails.last & " $" & employeedetails.salary
WScript.Echo employeedict.Item("3").first & " " & employeedict.Item("3").last & " makes $" & employeedict.Item("3").salary