/ / Perl: Was ist in use 5. ##. # Enthalten? - Perl, verwenden

Perl: Was ist in Verwendung 5. - Perl verwenden

Ich habe mehrere gesehen Beiträge dieser Zustand use 5.12.0; In Perl werden bestimmte Funktionen / Pragmas standardmäßig aktiviert (z. B. use strict;). Ein anderes Beispiel ist in utf-8 und perl wo es das heißt use 5.14.0; ist

Optimal für die UTF-8-Verarbeitung von Unicode-Zeichenfolgen.

Ich scheine mich an ein verfügbares zu erinnern use Deklaration, die bestimmte Standardeinstellungen bereitstellt (z. B. use strict; use warnings; use diagnostics;), kann sich aber nicht an die Einzelheiten erinnern use 5.##.#; Erklärung? Zum Beispiel, was macht use 5.22.0; standardmäßig bereitstellen? use strict;? Noch etwas? Vielen Dank.

Antworten:

10 für die Antwort № 1

Dies ist in dokumentiert perldoc feature:

Es ist möglich, mehrere Features mithilfe eines Feature-Bundles zusammen zu laden. Dem Namen eines Feature-Bundles wird ein Doppelpunkt vorangestellt, um es von einem tatsächlichen Feature zu unterscheiden.

use feature ":5.10";

Die folgenden Funktionspakete sind verfügbar:

bundle    features included
--------- -----------------
:default  array_base
:5.10     say state switch array_base
:5.12     say state switch unicode_strings array_base
:5.14     say state switch unicode_strings array_base
:5.16     say state switch unicode_strings
unicode_eval evalbytes current_sub fc
:5.18     say state switch unicode_strings
unicode_eval evalbytes current_sub fc
:5.20     say state switch unicode_strings
unicode_eval evalbytes current_sub fc
:5.22     say state switch unicode_strings
unicode_eval evalbytes current_sub fc

woher

use v5.10.0;

wird ein implizites tun

no feature ":all";
use feature ":5.10";

und so weiter.

Die automatische Freigabe von Verengungen ist in dokumentiert perldoc -f use:

Wenn die angegebene Perl-Version größer als oder gleich 5.12.0 ist, werden die Einschränkungen wie bei lexikalisch aktiviert use strict.


2 für die Antwort № 2

use 5.12.0; tut use feature ":5.12";so kommst du

  • sagen
  • Zustand
  • Schalter
  • Unicode_Strings
  • array_base

Die Feature-Bundles sind in dokumentiert feature.pm"s Dokumentation.


2 für die Antwort № 3

Für Verbesserungen, die von nicht abgedeckt werden Featurekannst du benutzen Syntax :: Construct.