doppelte Funktionsnamen

Sonstiges (nicht kategorisierbar)

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

doppelte Funktionsnamen

Beitrag von Manfred »

boh glaubse,
ich könnte die Wände hochlaufen :banghead: . Ich hatte hier schonmal von einem Projekt erzählt, welches ich seiner Zeit übernommen habe. In dem Projekt wurde/wird sehr viel in Konstante gepackt. Nicht nur Werte, sondern auch eigene Funktionen. Das war jetzt mal wieder so ein grandioser Fall, wo ich gar nicht so viel :spam1: :spam2: kann, wie ich :pukeleft: möchte.
Ich bin dabei die ganzen Konstantenfunktionen aufzulösen, weil es turboschwierig ist diese zu debuggen. Es gab auch diesmal eine CToN(). Diese habe ich dann in eine eigene Funktion umgebaut. So weit so gut. Nichts weiter dabei gedacht, es gab keine Meldung vom Compiler, das irgendwas nicht stimmen könnte. Irgendwann kam dann der Hinweis vom Anwender, das Ergebnisse nicht richtig sind. ich also ran den Speck und gesucht.......
Nichts gefunden. Irgendwann kam ich dann an die Stelle, wo die Funktion aufgerufen wird. Natürlich auch wieder total in AEval und Eval usw verschachtelt, das man Hörner kriegen könnte. Irgendwann habe ich mich dann gewundert, das trotz Breakpoint das Programm in der Funktion nicht stoppt. Die ganzen AEval und Evals zerpflückt und Schritt für Schritt gesucht. Die Funktion ausgremt.... Es gab keine Fehlermeldung beim Compilieren. Da wurde ich verdammt stutzig. Nachdem ich schon kurz vor dem Prager Fenstersturz stand, habe ich in der Workbenchhilfe nach der Funktion gesucht. Keine Hinweise dazu vorhanden. Also die alten Tools Bücher aus Clipperzeiten herausgekramt und da stand sie drin. Allerdings mit anderen Parametern, als sie von meinem Vorgänger gebaut wurde. Tolle Wurst.
Lange Rede kurzer Sinn, der Compiler compiliert sowas, sagt keinen Mucks und nimmt treu die aus den Tools. Und der Entwickler steht da wie ein Depp und merkt es nicht.
Das jetzt nur mal so zur Info, damit es keinem von euch auch so ergeht wie mir.
Naja, zumindest ist das Wochenende jetzt gerettet. Muß also nicht mehr übermäßig viel essen.....
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!!
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: doppelte Funktionsnamen

Beitrag von Werner_Bayern »

Servus Manfred,

damit aus dem Monolog ein Dialog wird :D
Ich verstehe es nicht. CtoN() steht ja in der Hilfe von Xbase++, ist also in der Runtime enthalten. Du hattest aber eine gleichlautende Funktion ohne static-Deklaration in Deinem Projekt? Trotzdem wurde die aus den Tools genommen?

Darf nicht sein...
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: doppelte Funktionsnamen

Beitrag von Manfred »

Hi Werner
Entweder brauche eine neue Brille oder.....
Ja einfache function . Habe schon bei Alaska nachgefragt.
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!!
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: doppelte Funktionsnamen

Beitrag von Werner_Bayern »

Ich hab ja schon eine 8)
Bin gespannt, was da los ist...
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: doppelte Funktionsnamen

Beitrag von Manfred »

Hi Werner,
wo hast Du denn in der normalen Workbenchhilfe was zu CToN() gefunden? Wenn man das eingibt, erscheint erstmal nichts.
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!!
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: doppelte Funktionsnamen

Beitrag von Werner_Bayern »

Unbenannt.PNG
Unbenannt.PNG (30.58 KiB) 8121 mal betrachtet
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: doppelte Funktionsnamen

Beitrag von Manfred »

interessant. Ich suche immer unter xbase++ Sprache. Da steht das gar nicht drin. Muß mich mal daran gewöhnen den Punkt Hilfe anzeigen zu nehmen.
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!!
Benutzeravatar
Jan
Marvin
Marvin
Beiträge: 14641
Registriert: Fr, 23. Sep 2005 18:23
Wohnort: 49328 Melle
Hat sich bedankt: 21 Mal
Danksagung erhalten: 87 Mal
Kontaktdaten:

Re: doppelte Funktionsnamen

Beitrag von Jan »

Oder den Funktionsaufruf in den Code-Editor schreiben und F1 drücken. Dann werden alle Hilfedateien danach durchsucht.

Aber mal ehrlich: Was Alaska da mit der Hilfe gemacht hat ist eine Katastrophe. Erstens wird vieles nicht mehr gefunden - tippt man in den Code z. B. GATHER, findet F1 das nie im Leben. Die Hilfe wird nicht mal geöffnet. Und dann, wenn man den Funktionsaufruf nicht exakt kennt, muß man ziemlich genau wissen, was man da sucht. Sonst bekomt man das nicht hin. Wie oft hab ich die Hilfe zu einer Methode gesucht, und werd dann auf die falsche Klasse geführt. Aber richtig übel wird das, wenn der Cdoe im Netz liegt. Dann dauert der Aufruf der Hilfe bei F1 eine Ewigkeit. Dazwischen kann man sehr gemächlich beobachten, wie nach und nach verschiedene Fenster markiert werden, mehrere Icons in der Taskliste auftauchen und wieder verschwinden.

Ich hab mir die Mühe gemacht eine sehr, sehr lange Liste über teilweise wirklich üble und arbeitshemmende Macken in der Workbench an Alaska zusammen zustellen. Da kam an einer Stelle ein absolutes Unverständnis, an der nächsten eiN Wow. Man werde sich das mal näher ansehen. Passiert ist - genau Null. Ich mag die Workbench, aber Alaska vergrault mir das immer wieder.

Jan
Zuletzt geändert von Jan am Mo, 04. Feb 2019 15:22, insgesamt 1-mal geändert.
Mitglied der XUG Osnabrück
Mitglied der XUG Berlin/Brandenburg
Mitglied des Deutschsprachige Xbase-Entwickler e. V.
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: doppelte Funktionsnamen

Beitrag von Manfred »

hier die Antwort.
es ist möglich aus DLLs exportierte Funktionen zu "überladen", siehe zB. die Redefinition von AppSys() oder DbeSys(). Diese Abhängigkeiten werden vom Linker aufgelöst. Eine Implementierung im gleichen Modul sollte eigentlich verwendet werden. Wird eine solche nicht gefunden, hängt es von der Linkreihenfolge ab, welche Implementierung verwendet wird. Steckt Deine Implementierung z.B. in einer eigenen DLL, verhält sie sich wettbewerblich zu der in der jeweiligen Tools-DLL.
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!!
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: doppelte Funktionsnamen

Beitrag von brandelh »

wenn ich eine Funktion sicher überladen will, muss die in die EXE !
Gruß
Hubert
Benutzeravatar
Werner_Bayern
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 2120
Registriert: Sa, 30. Jan 2010 22:58
Wohnort: Niederbayern
Hat sich bedankt: 29 Mal
Danksagung erhalten: 70 Mal

Re: doppelte Funktionsnamen

Beitrag von Werner_Bayern »

Servus Manfred,

und, wo war Deine Funktion dann letztendlich?
es grüßt

Werner

<when the music is over, turn off the lights!>
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: doppelte Funktionsnamen

Beitrag von Manfred »

in einer Zusatz DLL
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!!
Antworten