Comment puis-je définir une valeur par défaut pour une variable Perl?

Je suis complètement nouveau pour Perl. J'avais besoin d'utiliser un module externe HTTP::BrowserDetect. J'ai été le tester un peu de code et essayé d'obtenir le nom du système d'exploitation de os_string méthode. Donc, j'ai simplement initialisé l'objet et créé une variable pour stocker la valeur renvoyée.

my $ua = HTTP::BrowserDetect->new($user_agent);
my $os_name = $ua->os_string();

print "$user_agent $os_name\n";

il y a certains agents utilisateurs qui ne sont pas de l'utilisateur du navigateur agents afin qu'ils ne pas obtenir n'importe quelle valeur de os_string. J'obtiens une erreur Use of uninitialized value $os_name in concatenation (.) or string

Comment dois-je traiter de tels cas, lorsque l' $nom_système_exploitation n'est pas initialisé, car la méthode os_string retourne undef (c'est ce que je pense qui se passe à partir de la lecture du module code source). Je suppose qu'il doit être un moyen de donner une valeur par défaut de la chaîne, par exemple, Pas d'OS dans ces cas.

OriginalL'auteur sfactor | 2010-10-18