Gibt es eine Möglichkeit, ein Objekt zu erstellen, das Eigenschaften hat und nur mit der Notation eines Funktionsaufrufs aufgerufen werden kann? Etwas, das Pythons __call__
entspricht.Wie kann ich ein Objekt aufrufbar machen?
Zum Beispiel:
obj = ExampleClass.new()
obj() # call notation
Alternative Ansätze sind willkommen, ich brauche einen Weg für das aufrufbare „Objekt“ seine eigenen Eigenschaften zu speichern.
Was ich versuche zu tun ist ein abrufbares "Objekt" in einer Variablen zu speichern. Dieses Objekt verfügt über Eigenschaften, die ihm zugeordnet sind, während es gleichzeitig genau wie eine Methode verwendet werden kann. daher
Das ist mir nicht bekannt (und ich kann mir auch keinen großen Anwendungsfall vorstellen). Welchen spezifischen Anwendungsfall versuchen Sie zu lösen? Es könnte einen besseren Ansatz geben. –
"es kann genau wie eine Funktion verwendet werden" - beachten Sie, dass Ruby keine Funktionen hat (die Art, die Sie in, sagen wir, Javascript haben) –