![]() |
Wieso ist kein Overload bei Prozeduren einer Klasse möglich?
Ich habe folgenden Code einer Klasse:
Delphi-Quellcode:
und bekomme unter D7 den Fehler beim Kompilieren:
TConfigSaver = class
... public procedure WriteString(Section, Ident, Value: string); overload; procedure WriteString(Section, Ident, Value: widestring); overload; ... end; .. procedure TConfigSaver.WriteString(Section, Ident, Value: string); overload; // fehler an dieser stelle begin if IniFile then FIniFile.WriteString(section,ident,value) else FRegistry.WriteString(section+'_'+ident,value); end; procedure TConfigSaver.WriteString(Section, Ident, Value: widestring); overload; begin if IniFile then FIniFile.WriteString(section,ident,UTF16ToUTF8(value)) else FRegistry.WriteString(section+'_'+ident,UTF16ToUTF8(value)); end; [Error]: Invalid compiler directive: 'OVERLOAD' Wieso ist hier kein Overload möglich? |
AW: Wieso ist kein Overload bei Prozeduren einer Klasse möglich?
Bei der Implementation wird das Wörtchen "overload" weggelassen, der Compiler weiß ja schon, dass die Methode überladen ist.
|
AW: Wieso ist kein Overload bei Prozeduren einer Klasse möglich?
Danke, das wars! Ich wollte noch anmerken wenn Prozeduren/Funktionen sich ausserhalb von Klassen befinden, das overload in der Implementation NICHT angemekert wird.
|
AW: Wieso ist kein Overload bei Prozeduren einer Klasse möglich?
Hallöle...8-)
Zitat:
[/Scherz Ende] |
AW: Wieso ist kein Overload bei Prozeduren einer Klasse möglich?
Kein Scherz, wenn man das sowohl bei der Deklaration, als auch Implementation normaler Prozeduren oder Funktionen overload angibt, kann das irgendwann interne Compilerfehler geben und man sucht sich dumm und dämlich nach der Ursache (zumindest in meiner Delphiversion).
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:02 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 by Thomas Breitkreuz