[Dresden-pm] Frage zur Implementation von einer Schnittstelle -

Torsten Knorr create-soft at freenet.de
Sa Nov 5 05:27:29 PDT 2011


Hallo Hans-Dietrich

> From hd.kirmse at gmx.de  Sun Oct 30 13:39:34 2011
> From: hd.kirmse at gmx.de (Hans-Dietrich Kirmse)
> Date: Sun, 30 Oct 2011 21:39:34 +0100
> Subject: [Dresden-pm] Frage zur Implementation von einer 
> Schnittstelle -Nachtrag

> Damit habe ich für mein (einfaches) Problem eine Schnittstelle. Ich
> bedanke mich bei allen fürs Mitdenken.

 Bei den oben gezeigten Code handelt es sich nicht um eine Schnittstelle
 sondern um einen Funktionszeiger der je nach bedarf auf unterschiedliche
 Funktionen zeigt. Ich glaube das Problem läßt sich mit 
Vererbungspolymorphismus
 besser lösen.

#/usr/bin/perl -w
#*** main.pl ***#
#------------------------------------------------
 use strict;
 use AddonFormat;
 my $object = new AddonFormat;
 print($object->MyFunction());
#------------------------------------------------

#*** AddonFormat.pm ***#
#------------------------------------------------
 package AddonFormat;
 use MyDefaultFormat;
 @ISA = qw(MyDefaultFormat);
# Ist diese Funktion vorhanden wird sie aufgerufen.
# Wenn nicht wird in der Basisklasse danach gesucht.
# sub MyFunction
#    {
#    return "Hello From Addon Function\n";
#    }
 1;
#------------------------------------------------

#*** MyDefaultFormat.pm ***#
#------------------------------------------------
 package MyDefaultFormat;
 sub new
    {
    my ($class) = @_;
    my $self = {};
    bless($self, $class || ref($class));
    return $self;
    }
 sub MyFunction
    {
    return "Hello From Default Function\n";
    }
 1;
#------------------------------------------------

 Gruß Torsten




Mehr Informationen über die Mailingliste Dresden-pm