Schrift
[thread]5657[/thread]

Zugriff auf anderen Namensraum



<< |< 1 2 >| >> 14 Einträge, 2 Seiten
SirLant
 2003-08-25 15:56
#79996 #79996
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Gibt es einen Unterschied ob ich
Packagename::new() schreibe oder
Packagename->new() schreibe?
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
kabel
 2003-08-25 16:09
#79997 #79997
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
Quote
kabel@linux:~> perl
package A;
sub new { local $" = ", "; print "@_\n"; }
package main;
A->new (1 .. 3);
A::new (1 .. 3);
A, 1, 2, 3
1, 2, 3
kabel@linux:~>


bei der pfeilnotation wird die instanz bzw. das package als erster parameter mitgegeben.
-- stefan
SirLant
 2003-08-25 16:23
#79998 #79998
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Achso, danke :)
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
Crian
 2003-08-25 16:44
#79999 #79999
User since
2003-08-04
5870 Artikel
ModeratorIn
[Homepage]
user image
Außerdem kannst Du nicht-OO-Packages nicht mit der Pfeil-Syntax aufrufen *<:-} *tröt*\n\n

<!--EDIT|Crian|1061815497-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
pq
 2003-08-25 16:49
#80000 #80000
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=Crian,25.08.2003, 14:44]Außerdem kannst Du nicht-OO-Packages nicht mit der Pfeil-Syntax aufrufen *<:-} *tröt*[/quote]
können schon. es geht auch:
Code (perl): (dl )
my $main = main::->new();

(vorausgesetzt, das skript hat eine subroutine new())
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Crian
 2003-08-25 16:51
#80001 #80001
User since
2003-08-04
5870 Artikel
ModeratorIn
[Homepage]
user image
schon, aber ::-> ist etwas anderes als ->, aber ok ich gebe zu, es kommen Pfeile darin vor ;-)

Ich dachte halt: Kein Objekt da, was ich übergeben könnte, also kann die Pfeilsyntax nicht klappen. Wird denn bei ::-> etwas als erster Parameter übergeben? Und wenn ja was?\n\n

<!--EDIT|Crian|1061815982-->
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
kabel
 2003-08-25 17:04
#80002 #80002
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
tippfaul? ???

Quote
kabel@linux:~> perl
package A;
sub new { local $" = ", "; print "@_\n"; }
package main;
A::new ();
A::->new ();

A
kabel@linux:~>
\n\n

<!--EDIT|kabel|1061816715-->
-- stefan
Crian
 2003-08-25 17:13
#80003 #80003
User since
2003-08-04
5870 Artikel
ModeratorIn
[Homepage]
user image
*hmmmm* Was ist das denn für ein ominöses A? Einfach der Paket-Name? Irgendwas an diesem Konzept passt noch nicht ganz zu meiner Art zu Denken, oder andersherum ;-)
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
pq
 2003-08-25 17:13
#80004 #80004
User since
2003-08-04
12208 Artikel
Admin1
[Homepage]
user image
[quote=Crian,25.08.2003, 14:51]schon, aber ::-> ist etwas anderes als ->,[/quote]
nö, ist es nicht. relais schreibt ja auch hartnäckig CGI::->new

man könnte auch main->new() schreiben, aber da
beschwert sich perl5.6.1 noch.

beides übergibt also main oder halt den entsprechenden
packagenamen als erstes argument.
Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live. -- Damian Conway in "Perl Best Practices"
lesen: Wiki:Wie frage ich & perlintro Wiki:brian's Leitfaden für jedes Perl-Problem
Strat
 2003-08-25 21:23
#80005 #80005
User since
2003-08-04
5246 Artikel
ModeratorIn
[Homepage] [default_avatar]
Bitte diese Nachricht ignorieren, ist Schrott

[quote=pq,25.08.2003, 15:13]nö, ist es nicht. relais schreibt ja auch hartnäckig CGI::->new[/quote]
Code (perl): (dl )
1
2
3
4
5
6
7
8
9
10
11
12
use CGI;
my $cgi = CGI->new();
my $param = $cgi->param('x');

sub CGI {
  print "CGI
";
}
sub new {
  print "new
";
}

macht richtig spass; da ich durch diese beiden Doppelpunkte doch ein wenig mehr an Sicherheit reinbringen, habe ich mir auch "The Way of Relais" angewoehnt und schreibe: my $cgi = CGI::->new();\n\n

<!--EDIT|Strat|1061833915-->
perl -le "s::*erlco'unaty.'.dk':e,y;*kn:ai;penmic;;print"
http://www.fabiani.net/
<< |< 1 2 >| >> 14 Einträge, 2 Seiten



View all threads created 2003-08-25 15:56.