Die Grenzen von use constant

Bei Listenkonstanten erfolgt momentan nicht das gleiche Inlining wie bei skalaren Konstanten. Es ist auch nicht möglich, eine Subroutine oder ein Schlüsselwort mit dem gleichen Namen wie eine Konstante zu besitzen. Das ist wohl auch gut so.

Sie können jeweils nur eine benannte Konstante deklarieren:

use constant FCO => 4, BAR => 5;   # FALSCH

Damit definieren Sie eine Konstante namens FOO, die die Liste (4,"BAR", 5) zurückgibt. Statt dessen müssen Sie folgendes eingeben:

use constant FOO =>
4 use constant BAR => 5;

Sie können sich selbst in Schwierigkeiten bringen, wenn Sie eine Konstante in einem Kontext verwenden, der bloße Namen einem automatischen Quoting unterzieht. (Das gilt für jeden Subroutinenaufruf, nicht nur für ...

Get Programmieren mit Perl now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.