Grund für Fehlermeldung
Moderator: Moderatoren
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Grund für Fehlermeldung
Hallo,
kann mir jemand sagen, was diese Meldung mir sagen möchte? "Access to member-variable not allowed in this context". Das Irritierende daran ist, daß ich die Variable einfach nur an eine Funktion übergebe, so wie ich das an anderen Stellen auch mache. Ich habe die auch nicht anders deklariert als die anderen Variablen.
Jan
kann mir jemand sagen, was diese Meldung mir sagen möchte? "Access to member-variable not allowed in this context". Das Irritierende daran ist, daß ich die Variable einfach nur an eine Funktion übergebe, so wie ich das an anderen Stellen auch mache. Ich habe die auch nicht anders deklariert als die anderen Variablen.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Hi Jan,
ist die Var Exported, oder Protected, oder Hidden? Den Fehler kenne ich, aber mir fällt nicht mehr ein, was ich damals verbockt hatte. Oder ist die Var aus einer anderen Klasse, bzw. Vererbung?
Im Zweifelsfall an der Stelle über den Debugger gucken, wie es aussieht.
ist die Var Exported, oder Protected, oder Hidden? Den Fehler kenne ich, aber mir fällt nicht mehr ein, was ich damals verbockt hatte. Oder ist die Var aus einer anderen Klasse, bzw. Vererbung?
Im Zweifelsfall an der Stelle über den Debugger gucken, wie es aussieht.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Z.B. das dass Objekt noch nicht erzeugt ist?
Viele Grüße,
Martin
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Für Methoden gibt es sowas.
das ist natürlich besonders clever25 XPP_ERR_METHOD_ACCESS Zugriff auf Methode ist in diesem
Kontext nicht erlaubt (z.B. wenn eine
Methode nicht als EXPORTED: deklariert ist,
kann sie nicht in Funktionen sondern nur
in Methoden aufgerufen werden).
28 XPP_ERR_MEMBERVAR_ACCESS Zugriff auf Member-Variable ist
in diesem Kontext nicht erlaubt.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Hallo Manfred und Martin,
die ist als PROTECTED deklariert. Wenn ich die als EXPORTED einbaue, dann funktioniert es. Das habe ich inzwischen schon rausbekommen.
Hubert hat aber mal hier geschrieben, aus Kapselungsgründen wäre ein PROTRECTED ACCESS besser. Aber wie baue ich das ein? Ich hab die Hilfe durchwühlt und rumprobiert, weil ich da nix gefunden habe. Ich komme nicht dahinter, wie ich das umsetzen soll/kann.
Jan
die ist als PROTECTED deklariert. Wenn ich die als EXPORTED einbaue, dann funktioniert es. Das habe ich inzwischen schon rausbekommen.
Hubert hat aber mal hier geschrieben, aus Kapselungsgründen wäre ein PROTRECTED ACCESS besser. Aber wie baue ich das ein? Ich hab die Hilfe durchwühlt und rumprobiert, weil ich da nix gefunden habe. Ich komme nicht dahinter, wie ich das umsetzen soll/kann.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Jan,
ich stelle fest: Wir sind immer noch Leidensgenossen. Ich kapiere das auch noch nicht wirklich. Ich bastel schon den ganzen Tag hier rum und verstehe manchmal nicht warum es klappt, bzw. warum es nicht klappt.
ich stelle fest: Wir sind immer noch Leidensgenossen. Ich kapiere das auch noch nicht wirklich. Ich bastel schon den ganzen Tag hier rum und verstehe manchmal nicht warum es klappt, bzw. warum es nicht klappt.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Manfred,
seit wann sind Du und ich Leidensgenossen? Du spielst doch die Klaviatur der Klassen im Schlaf rauf und runter. Und ich bin froh, wenn ich die Vokabeln gerade mal richtig schreiben kann.
Jan
seit wann sind Du und ich Leidensgenossen? Du spielst doch die Klaviatur der Klassen im Schlaf rauf und runter. Und ich bin froh, wenn ich die Vokabeln gerade mal richtig schreiben kann.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Jan,
zeige mal Deine Klassendeklaration und wo und wie Du die betreffende Methode aufrufst.
Viele Grüße,
Martin
zeige mal Deine Klassendeklaration und wo und wie Du die betreffende Methode aufrufst.
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Jan,
Du denkst wohl auch: Kurz vor Weihnachten, da wollen wir mal Lustig sein! Nicht wahr? Klaviatur, rauf und runter. Danke dass Du mir so viel schon zutraust. =D>
Ich lese gerade: Protected Access. Ist dass nicht auch wieder geschützt und kann so nicht klappen, wie Du es gerne hättest?
Du denkst wohl auch: Kurz vor Weihnachten, da wollen wir mal Lustig sein! Nicht wahr? Klaviatur, rauf und runter. Danke dass Du mir so viel schon zutraust. =D>
Ich lese gerade: Protected Access. Ist dass nicht auch wieder geschützt und kann so nicht klappen, wie Du es gerne hättest?
Zuletzt geändert von Manfred am Sa, 29. Nov 2008 21:10, insgesamt 1-mal geändert.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Martin,
das ist ein Mißverständnis. Es geht um eine PROTECTED VAR. Die bei der Übergabe an eine STATIC FUNCTION die oben genannte Fehlermeldung erzeigt.
Jan
das ist ein Mißverständnis. Es geht um eine PROTECTED VAR. Die bei der Übergabe an eine STATIC FUNCTION die oben genannte Fehlermeldung erzeigt.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Manfred,
1) Ich bin immer lustig
2) Naja, ich denke mal wenn ich eine PROTECTED VAR mit ACCESS einbaue, dann ist die zwar nur in der Klasse sichtbar, kann aber extern übergeben werden.
Sag ich mal so blauäugig als Klassen-Dummy. Aber irgendwas hat Hubert sich ja wohl bei seiner Aussage gedacht.
Jan
1) Ich bin immer lustig
2) Naja, ich denke mal wenn ich eine PROTECTED VAR mit ACCESS einbaue, dann ist die zwar nur in der Klasse sichtbar, kann aber extern übergeben werden.
Sag ich mal so blauäugig als Klassen-Dummy. Aber irgendwas hat Hubert sich ja wohl bei seiner Aussage gedacht.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Jan,
das kann nicht gehen!
Eine PROTECTED VAR kann nur innerhalb der Klasse angesprochen werden, in der sie auch deinfiert ist! Nicht in einer Instanz der Klasse und nicht von aussen!
Viele Grüße,
Martin
das kann nicht gehen!
Eine PROTECTED VAR kann nur innerhalb der Klasse angesprochen werden, in der sie auch deinfiert ist! Nicht in einer Instanz der Klasse und nicht von aussen!
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Nee,
wenn ich das richtig interpretiere, ist der generelle Zugriff (auch lesend) außerhalb untersagt. Das ist ja der Sinn und Zweck einer Kapselung. Der Raum ist dicht und keiner kommt rein, oder kann rein gucken. Nur die die drin sind, die sehen was los ist und können spielen.
Maddin war mal wieder schneller....
wenn ich das richtig interpretiere, ist der generelle Zugriff (auch lesend) außerhalb untersagt. Das ist ja der Sinn und Zweck einer Kapselung. Der Raum ist dicht und keiner kommt rein, oder kann rein gucken. Nur die die drin sind, die sehen was los ist und können spielen.
Maddin war mal wieder schneller....
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Jan
- Marvin
- Beiträge: 14655
- Registriert: Fr, 23. Sep 2005 18:23
- Wohnort: 49328 Melle
- Hat sich bedankt: 21 Mal
- Danksagung erhalten: 88 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Hey Leute,
ich will die VAR nicht von außen ansprechen! Ich will die an eine FUNCTION übergeben! Die zwar im gleichen pgr File liegt, aber eben nicht innerhalb der Klasse.
Jan
ich will die VAR nicht von außen ansprechen! Ich will die an eine FUNCTION übergeben! Die zwar im gleichen pgr File liegt, aber eben nicht innerhalb der Klasse.
Jan
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Jan,
KAPSELUNG, Raum ist abgeschlossen, Keine Fenster, keine Türen.... Nix mit weitergeben. OOP. Das ist das Dingen daran. Nicht mit Funktionen verwechseln.
(wehe das war jetzt falsch von mir erklärt)
KAPSELUNG, Raum ist abgeschlossen, Keine Fenster, keine Türen.... Nix mit weitergeben. OOP. Das ist das Dingen daran. Nicht mit Funktionen verwechseln.
(wehe das war jetzt falsch von mir erklärt)
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- Martin Altmann
- Foren-Administrator
- Beiträge: 16517
- Registriert: Fr, 23. Sep 2005 4:58
- Wohnort: Berlin
- Hat sich bedankt: 111 Mal
- Danksagung erhalten: 48 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Manfred,
nö - war genau richtig!
Jan,
mach eine EXPORTED Methode in Deine Klasse, die die PROTECTED VAR zurückgibt.
Viele Grüße,
Martin
nö - war genau richtig!
Jan,
mach eine EXPORTED Methode in Deine Klasse, die die PROTECTED VAR zurückgibt.
Viele Grüße,
Martin
Webseite mit XB2.NET und ausschließlich statischem Content in Form von HTML-Dateien: https://www.altem.de/
Webseite mit XB2.NET und ausschließlich dynamischem Content in Form von in-memory-HTML: https://meldungen.altem.de/
Mitglied der XUG Osnabrück
Vorsitzender des Deutschsprachige Xbase-Entwickler e. V.
- Manfred
- Foren-Administrator
- Beiträge: 21199
- Registriert: Di, 29. Nov 2005 16:58
- Wohnort: Kreis Wesel
- Hat sich bedankt: 210 Mal
- Danksagung erhalten: 67 Mal
Re: Grund für Fehlermeldung
Oder überlege, warum die VAR Protected ist/sein muß und mache sie Exported.
Ich kriege auch gerade einen Affen hier mit Protected usw.
Ich kriege auch gerade einen Affen hier mit Protected usw.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Grund für Fehlermeldung
Hi Jan,
ehrlich gesagt verwende ich auch meist EXPORTED, statt der Kapselung.
Bei eigenen Klassen für eigene Programme ist das OK,
da man selbst ja am Besten weiß, welche Parameter OK sind.
Wenn man aber Klassen veröffentlicht und jedem Programmierer einfach Zugriff auf die "Unterwäsche" lässt,
braucht man sich nicht über peinliche Momente zu wundern
Für die Beurteilung was genau bei dir fehlschlägt braucht man aber auf jeden Fall die Code-Zeilen des Aufrufs,
es gibt hier nämlich viele verschiedene Ursache Möglichkeiten
ehrlich gesagt verwende ich auch meist EXPORTED, statt der Kapselung.
Bei eigenen Klassen für eigene Programme ist das OK,
da man selbst ja am Besten weiß, welche Parameter OK sind.
Wenn man aber Klassen veröffentlicht und jedem Programmierer einfach Zugriff auf die "Unterwäsche" lässt,
braucht man sich nicht über peinliche Momente zu wundern
Für die Beurteilung was genau bei dir fehlschlägt braucht man aber auf jeden Fall die Code-Zeilen des Aufrufs,
es gibt hier nämlich viele verschiedene Ursache Möglichkeiten
Gruß
Hubert
Hubert