![]() |
Delphi-Version: 5
Override wird nicht akzeptiert unter D11
Ich habe ein Problem seit D11. War unter 10.4 nicht so!
Was soll denn da Unterschiedlich sein?
Delphi-Quellcode:
function TJsonBytesStream.Realloc(var NewCapacity: Longint): Pointer;
var L: Longint; begin // bla, bla end;
Delphi-Quellcode:
{$IFDEF SUPPORTS_UTF8STRING}
TJsonUTF8StringStream = class(TMemoryStream) private FDataString: UTF8String; protected function Realloc(var NewCapacity: Longint): Pointer; override; public constructor Create; property DataString: UTF8String read FDataString; end; {$ENDIF SUPPORTS_UTF8STRING} TJsonBytesStream = class(TMemoryStream) private FBytes: TBytes; protected function Realloc(var NewCapacity: Longint): Pointer; override; public constructor Create; property Bytes: TBytes read FBytes; end; Zitat:
Zitat:
Delphi-Quellcode:
function Realloc(var NewCapacity: Longint): Pointer; reintroduce; overload;
Welcher Unterschied ist aber nun zur vorherigen version? bzw. welche Auswirkungen hat das?
Delphi-Quellcode:
function Realloc(var NewCapacity: Longint): Pointer; override;
So wie ich das verstehe habe ich ja 2 die gleichen functionen.. Einmal für UTF8String und einmal ohne deshalb muß diese überschrieben werden damit ich beide abhängig vom UTF8String verwenden kann. Ist das mit reintroduce; overload; überhaupt noch gewährt? Warum wurde override unter 10.4 anstandslos akzeptiert? |
AW: Override wird nicht akzeptiert unter D11
Da ich D11.0 gerade erst installiere kann ich nicht prüfen ob die von dir als Quelltext gezeigten
Klassen aus der RTL sind oder von dir selber. Aber: wenn's bei Override einen Compilerfehler gibt musst du dir mal die Deklaration dessen, was du überschreiben willst anschauen. |
AW: Override wird nicht akzeptiert unter D11
Zitat:
|
AW: Override wird nicht akzeptiert unter D11
Zitat:
![]() Zitat:
Und es wurde auf Overload umgelegt. |
AW: Override wird nicht akzeptiert unter D11
Zitat:
dynamische Arrays können die 2 GB überschreiten (64 Bit da NativeInt, siehe TDynArrayRec und DynArraySetLength) Aber StrRec und SetLength für Strings sind weiterhin Integer und somit unter 2 GB, bzw. unter 1 Milliarde Zeichen. Somit sind LongStrings und DynArrays nun endgültig inkompatibel, in ihrer hauptsächlichen Speicherstruktur. :( Allerdings zeigt CodeInsight weiterhin "Integer" für den NewLength-Parameter im SetLength an, was schon bissl blöd/irreführend ist. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:20 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