sqrt
kann über die Funktionssyntax aufgerufen werden:
Es kann auch über Methodensyntax aufgerufen werden:
%Vor%Gibt es eine Möglichkeit, benutzerdefinierte Subroutinen über Methodensyntax aufrufbar zu machen?
Definieren wir zum Beispiel sq
:
Gibt es eine Möglichkeit, sie als Methode aufrufbar zu machen? Ie.
%Vor%Gibt es eine Möglichkeit, benutzerdefinierte Subroutinen über Methodensyntax aufrufbar zu machen?
Ja, verwenden Sie einfach die .&
-Syntax, wie in:
Der Aufruf wird als erstes Argument übergeben:
%Vor%Der einzige Haken ist, dass Sie den Bereich "unspace" verwenden müssen, wenn Sie die Methodenkette mit diesen auf mehrere Zeilen aufteilen möchten:
%Vor% Du kannst mit dem Monkey-Typ Int
erweitern. Erwarte, dass der Optimierer abschneidet, dass deine Brüste zu schrumpfen beginnen und dass die Welt im Allgemeinen endet. Affen tippen ist böse. Verwenden Sie es nicht, es sei denn, Sie müssen.
Sie können eine Rolle mit dem Objekt mischen. Beachten Sie, dass das Objekt das Objekt ist, nicht die Klasse Int
oder der Container $i
.
Sie können eine frei fließende Methode erstellen und den Aufrufoperator .&
method verwenden.
BEARBEITEN:
Wenn Sie wirklich Annahmen brechen wollen, können Sie sogar auf private Attribute zugreifen.
%Vor%Tags und Links perl6