Beppo: Hilfe - verstehe den englischen Text nicht!

Hallo,
kennt Ihr eine einfache deutsche Beschreibung für den nachfolgenden Sachverhalt:

our associates a simple name with a package variable in the current package for use within the current scope. When use strict 'vars'  is in effect, our lets you use declared global variables without qualifying them with package names, within the lexical scope of the our declaration. In this way our differs from use vars , which is package scoped.

Unlike my, which both allocates storage for a variable and associates a simple name with that storage for use within the current scope, our associates a simple name with a package variable in the current package, for use within the current scope. In other words, our has the same scoping rules as my, but does not necessarily create a variable.

Wenn ich das wörtlich übersetze, verstehe ich es trotzdem nicht!

  1. Hallo,
    kennt Ihr eine einfache deutsche Beschreibung für den nachfolgenden Sachverhalt:

    Ich weiss nicht, wie ich "Scope" sinnvoll übersetzen soll, ich sag mal "Kontext":

    "'our' verknüpft einen einfachen Namen mit einer Paket-Vraiablen im aktuellen Paket, um sie im aktuellen Kontext verwenden zu können.
    Wenn "use strict vars" eingeschaltet ist, läßt Sie 'our' innerhalb ihres lexikalischen Kontextes global deklarierte Variablen verwenden, ohne sie über einen Paketnamen ansprechen zu müssen. In dieser Hinsicht unterscheiedet ['our'] sich von der Benutzung "vars", welche auf den Paket-Kontext beschränkt ist.

    Im Gegensatz zu 'my', welches sowohl Speicherplatz für eine Variable bereitställt als auch einen einfachen Namen diesem Speicherplatz zuweist, verknüpft 'our' einen einfachen Namen mit einer Paketvariablen innerhalb des aktuellen Paketes, um sie im aktuellen Kontext einzusetzen. Mit anderen Worten, 'our' verhält sich nach den selben Kontext-Regeln wie 'my', aber erzeugt nicht zwingend eine Variable."

    (ohne Gewähr).

    Heisst:

    • Mit 'our' kannst Du Variablen deklarieren, die über Paketgrenzen hinweg gültig sein sollen.
    • Logischerweise MUSS deswegen nicht zwingend eine neue Variable erzeugt werden, wenn Du etwas mit "our" definierst, weil es evtl. schon eine Variable gibt, die so heisst - im Gegensatz zu 'my'.

    Beispiel zur Verwendung

    Grüße,
    Jörg

    1. Hi,

      Ich weiss nicht, wie ich "Scope" sinnvoll übersetzen soll, ich sag mal "Kontext":

      Vielleicht auch Gültigkeitsbereich.

      Beispiel zur Verwendung

      Bei SELFHTML steht auch was zu dem Thema (auf detusch).

      mfG,
      steckl

      1. Moin Moin!

        Hi,

        Ich weiss nicht, wie ich "Scope" sinnvoll übersetzen soll, ich sag mal "Kontext":

        Vielleicht auch Gültigkeitsbereich.

        Wesentlich besser. Kontext hat in Perl eine andere Bedeutung, insbesondere bei Funktionsaufrufen:

          
        foo();         # void context,   wantarray() liefert undef  
        $x=foo();      # scalar context, wantarray() liefert false  
        ($x,$y)=foo(); # list context,   wantarray() liefert true  
        @x=foo();      # array context,  wantarray() liefert true  
        %h=foo();      # hash context,   wantarray() liefert true  
        
        

        Alexander

        --
        Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
  2. kennt Ihr eine einfache deutsche Beschreibung für den nachfolgenden Sachverhalt:

    Nein, aber eine gute Übersetzung von einem Artikel zum Thema:
    http://aktuell.de.selfhtml.org/artikel/cgiperl/scoping/index.htm

    Struppi.