![]() |
Seltsames Linker/Compilerverhalten
Liste der Anhänge anzeigen (Anzahl: 1)
Hi,
ich hab grad eine Unit geschrieben, nur kommt immer die Meldung "Funktion braucht einen Ergebnistyp", obwohl ich ganz sicher bei jeder Funktion einen habe. Außerdem wird der fehler in einer Zeile angezegt, wo es keine Funktion gibt:
Delphi-Quellcode:
weiß einer was man da machen kann?
unit EasyRegistry;
interface //Hier tritt der Fehler auf uses Windows, Registry; Ich hab auch schon probiert den QT in eine neue Unit zu kopieren, aber mit wenig Erfolg. |
Re: Seltsames Linker/Compilerverhalten
Moin moin
änder doch mal
Delphi-Quellcode:
in
function RegToStr(path, name: string); RootKey: HKEY): string; overload;
Delphi-Quellcode:
^^Die schließende Klammer wegmachen...
function RegToStr(path, name: string; RootKey: HKEY): string; overload;
schönen Gruß Sam |
Re: Seltsames Linker/Compilerverhalten
kurze zwischenfrage (ich geh davoin aus, das das duie lösung war):
was heisst dieses "overload" dahinter oder auch ich glaub "digital" |
Re: Seltsames Linker/Compilerverhalten
Liste der Anhänge anzeigen (Anzahl: 1)
*zack* .. So hab auch mal die .Create anweisungen aus den try...finally Blöcken geholt.
[edit] @glkbkk siehe OH : Zitat:
|
Re: Seltsames Linker/Compilerverhalten
@BluesKid:
Danke, das war! Jetzt funktionierts... Nur was genau war der fehler? Ich kann keinen unterschied finden (bis auf zwei schließende klammern im interface, welche aber das problem nicht vollständig beheben...) |
Re: Seltsames Linker/Compilerverhalten
Vorher:
Delphi-Quellcode:
nacher:function RegToStr(path, name: string); //<-- hier hat die function keinen Ergebnistyp RootKey: HKEY): string; overload; //<-- und es ist fraglich ob dir der Compiler das // durchgehen lassen würde ;-)
Delphi-Quellcode:
function RegToStr(path, name: string; RootKey: HKEY): string; overload; // ^^^^ jetzt stimmt |
Re: Seltsames Linker/Compilerverhalten
OK, danke...
|
Re: Seltsames Linker/Compilerverhalten
ähm, einfach gesagt,
Delphi-Quellcode:
bewirkt, das bei einem solchen aufruf
procedure machwas(a:integer); overload;
Delphi-Quellcode:
vor dem eigentlichen aufruf den short in nen int wandelt
machwas(a);//typ shortint
richtig so? |
Re: Seltsames Linker/Compilerverhalten
Obwohl's eigentlich OT ist:
Mit overload kannst du mehrere Prozeduren mit dem selben Namen erstellen, die unterschiedliche Parameter entgegennehmen. Der Comiler ruft dann automatisch die Prozedur auf, zu der die übergebenen Parameter passen. |
Re: Seltsames Linker/Compilerverhalten
das heisst der kompiler passt nicht die typen an, sondern sucht die passende procedure aus...
und override? error-code-unterdrückung? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz