Gibt es in Perl eine Möglichkeit, Undef manuell in 0 zu konvertieren?

8

Ich habe ein Fragment in dieser Form:

%Vor%

Die Realität ist noch chaotischer, da mehr als zwei Variablen betroffen sind.

Was ich wirklich schreiben möchte, ist dies:

%Vor%

und habe undef korrekt auf 0 ausgewertet, aber ich bekomme diese Warnungen in fast jedem Lauf:

%Vor%

Was ist der beste Weg, um diese Nachrichten verschwinden zu lassen?

NB: Ich verwende 'strict' und 'benutze Warnungen', wenn das relevant ist.

    
Anon Gordon 29.08.2009, 10:37
quelle

4 Antworten

16
___ answer1351121 ___

Sie können die Warnung "nicht initialisiert" für eine Sekunde ausschalten:

%Vor%

Oder Sie können auf Null schließen:

%Vor%

Sieht mir aber nicht sehr gut aus.

    
___ qstntxt ___

Ich habe ein Fragment in dieser Form:

%Vor%

Die Realität ist noch chaotischer, da mehr als zwei Variablen betroffen sind.

Was ich wirklich schreiben möchte, ist dies:

%Vor%

und habe undef korrekt auf 0 ausgewertet, aber ich bekomme diese Warnungen in fast jedem Lauf:

%Vor%

Was ist der beste Weg, um diese Nachrichten verschwinden zu lassen?

NB: Ich verwende 'strict' und 'benutze Warnungen', wenn das relevant ist.

    
___ answer1351173 ___

Wenn Sie sie hinzufügen, filtern Sie einfach die undefs.

%Vor%

Oder sogar

%Vor%     
___ tag123perl ___ Perl ist eine prozedurale, allgemeine Programmiersprache für allgemeine Zwecke, die für ihre native Unterstützung von regulären Ausdrücken und String-Parsing-Funktionen bekannt ist. Bitte verwenden Sie diesen Tag für Fragen zu Perl im Allgemeinen. Für Dinge, die mit der neuen (aber verwandten) Sprache "Perl 6" zu tun haben, verwenden Sie bitte das perl6-Tag. Verwenden Sie für reguläre Ausdrücke nach Perl-Art in anderen Sprachen das Regex-Tag oder, falls sie auf der PCRE-Bibliothek basieren, das PCRE-Tag. ___ answer1351487 ___
%Vor%

In diesem Fall ist es in Ordnung, falsche Werte aufgrund Ihres Fallback-Werts als nicht definierte Werte zu behandeln.

    
___ tag123undef ___ hilf uns dieses Wiki zu bearbeiten ___ qstnhdr ___ Gibt es in Perl eine Möglichkeit, Undef manuell in 0 zu konvertieren? ___
Michael Carman 29.08.2009, 14:03
quelle
6

Sie können die Warnung "nicht initialisiert" für eine Sekunde ausschalten:

%Vor%

Oder Sie können auf Null schließen:

%Vor%

Sieht mir aber nicht sehr gut aus.

    
zoul 29.08.2009 10:45
quelle
4

Wenn Sie sie hinzufügen, filtern Sie einfach die undefs.

%Vor%

Oder sogar

%Vor%     
dave4420 29.08.2009 11:11
quelle
4
%Vor%

In diesem Fall ist es in Ordnung, falsche Werte aufgrund Ihres Fallback-Werts als nicht definierte Werte zu behandeln.

    
glenn jackman 29.08.2009 13:48
quelle

Tags und Links