Thread Experimental keys on scalar is now forbidden at.. (8 answers)
Opened by wollik at 2019-12-10 22:04

hlubenow
 2019-12-11 19:12
#190965 #190965
User since
2009-02-22
876 Artikel
BenutzerIn
[default_avatar]
2019-12-11T17:02:59 wollik
In einem Hash (Geräte_Hash) of hashes, sind verschiedene Gerätennamen als Keys definiert.

Jeder dieser keys is wiederum ein hash mit den einzigartigen Parametern für dieses Device (Adresse, ID, TYPE,...)

Per ausgelesenen Geräte-Type greife ich auf weitere unterschiedliche Hashes (mit type spezifischen keys) zu, die die Parameter für diesen Gerätetype beinhalten welche bei allen dieser Gerätetypen gleich sind.

Wahrscheinlich wäre es einfacher, das mit Klassen und Objekten zu machen. Hier ein minimales Beispiel. Guck' Dir nur insbesondere die letzten zwei Zeilen an.
Wenn man das so machen könnte, und $device1 auch so an Funktionen übergeben könnte, würde das dann die Sache vereinfachen?
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#!/usr/bin/perl

use warnings;
use strict;

package Device {

    sub new {
        my $classname = shift;
        my $self = {address => shift,
                    id      => shift,
                    type    => shift};
        return bless($self, $classname);
    }

    sub getType {
        my $self = shift;
        return $self->{type};
    }
}

my $device1 = Device->new("/dev/test", 1, "test-device");
print "\nType of device1 is: \"" . $device1->getType() . "\".\n\n";

Auf meiner Seite hab ich genauer beschrieben, wie man sowas macht.

View full thread Experimental keys on scalar is now forbidden at..