![]() |
Wann Parameter als const deklarieren?
Hi,
da ich z. Z. sehr viel mit OOP mach, hab ich auch einige Parameter. Woran erkenne ich bzw. wann weiß ich, wann ich einen Parameter als const deklarieren soll? Z.B.
Delphi-Quellcode:
Woher weiß ich, welche Version ich nehmen soll?
function MD5File(FileName: String): String;
begin with THash_MD5.Create(nil) do begin Result := CalcFile(FileName, nil, fmtHex); end; end; function MD5File(const FileName: String): String; begin with THash_MD5.Create(nil) do begin Result := CalcFile(FileName, nil, fmtHex); end; end; |
Re: Wann Parameter als const deklarieren?
Hi,
Du solltest immer "const" verwenden, wenn Du den Parameter in der Prozedur nicht veränderst. mfG mirage228 |
Re: Wann Parameter als const deklarieren?
Hi,
danke ;) |
Re: Wann Parameter als const deklarieren?
Zitat:
Herzlichsten Dank an alle Global-Variablen-Gegner für die fundierte Aufklärung der "Anfänger"! Man sieht sich bei HartzIV! |
Re: Wann Parameter als const deklarieren?
Zitat:
|
Re: Wann Parameter als const deklarieren?
@new4toms: Gibt es einen Grund für deinen sinnlosen und nichts sagenden Beitrag?
|
Re: Wann Parameter als const deklarieren?
Ey sorry, ich verstehe Deinen Einwand absolut nicht.
Ohne "const" wird die ganze Methode mit eine SEH-Frame (try..finally) umgeben, da ohne "const" die Referenzzählung bei dem Strings durchgeführt wird.
Delphi-Quellcode:
mfG
// prinzipiell so bei String-Parametern (ohne "const")
_AddRef(EinString); try // Code... finally _Release(EinString); end; mirage228 |
Re: Wann Parameter als const deklarieren?
An den User wurde von mir eine PN gesendet.
[Edit]Luckies Posting habe ich leider erst später gesehen[/edit] |
Re: Wann Parameter als const deklarieren?
Zitat:
|
Re: Wann Parameter als const deklarieren?
Zitat:
mfG mirage228 |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:22 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