Definieren Sie ein Unterprogramm, das über Methodensyntax aufgerufen werden kann

8

sqrt kann über die Funktionssyntax aufgerufen werden:

%Vor%

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 :

%Vor%

Gibt es eine Möglichkeit, sie als Methode aufrufbar zu machen? Ie.

%Vor%     
dharmatech 24.05.2016, 20:45
quelle

2 Antworten

9
  

Gibt es eine Möglichkeit, benutzerdefinierte Subroutinen über Methodensyntax aufrufbar zu machen?

Ja, verwenden Sie einfach die .& -Syntax, wie in:

%Vor%

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%     
Zoffix Znet 24.05.2016, 23:55
quelle
4

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.

%Vor%

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 .

%Vor%

Sie können eine frei fließende Methode erstellen und den Aufrufoperator .& method verwenden.

%Vor%

BEARBEITEN:

Wenn Sie wirklich Annahmen brechen wollen, können Sie sogar auf private Attribute zugreifen.

%Vor%     
user5854207 24.05.2016 21:24
quelle

Tags und Links