![]() |
AW: Na, schon Delphi XE gekauft?
Zitat:
![]() |
AW: Na, schon Delphi XE gekauft?
So, habe die Trial jetzt auch mal 2 Stunden getestete. Die IDE musste ich in dieser Zeit _3_ mal Neustarten!
Super Arbeit! :thumb: Desweiteren sind von AQ-Time und CodeSite nur abgespeckte Versionen enthalten, die wesentliche Features nicht mitbringen. Alles in allem also keine Kaufempfehlung. Zumal gibt es für Student/Hobby-Entwickler keine Versionen - Schade Delphi, die Jahre mit Dir waren trotzdem was feines. :pale: |
AW: Na, schon Delphi XE gekauft?
Zitat:
Aber was interessiert uns Delphianer das, wo wie doch eh nur Win16/32 können. :stupid: Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
In D2007 ist NativeInt 64 bit groß und in D2010 ist es 32 bit.
Delphi-Quellcode:
Wäre RandomInt nicht passender? :lol:
const
snInt = SizeOf(NativeInt); tmp = snInt; // D11=8 | D14=4 ?! abc: NativeInt = Nativeint(MaxInt)*Nativeint(MaxInt); // doesnt fail in D11 Ich glaub ich schreib mir privat jetzt ne kleine Datentypunit mit Unittest, welches ich bei neuen Delphiversionen laufen lasse. (Int8-UInt64, Int, Ptr, Str und Chr) |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Was soll uns das jetzt sagen: Nichts. Rein gar nichts. (Könntest du wenigstens *ansatzweise* beschreiben WAS und WIE du zu den Fehlern kommst (...grummel, grummel... "reproduzierbar"... grummel... grummel) |
AW: Na, schon Delphi XE gekauft?
Zitat:
Mich stört es tierichst, daß z.B. die Indy-DCUs mit Debuginfos kompiliert wurden, selbt diese, welche es eigentlich nicht sein sollten. Sowas macht richtig Spaß, wenn man mal wieder (ohne DebugDCUs) debuggen will und dennoch ständig in solchen Units landet. :wall: |
AW: Na, schon Delphi XE gekauft?
Zitat:
Achja: System: Win7 x64 Ultimate. Mal sehen, wenns nochmal auftritt, weiss ich vielleicht mehr, was genau die Schritte davor waren. |
AW: Na, schon Delphi XE gekauft?
Das Problem trat auf, als ich ein größeres Projekt mit XE kompilieren wollte. Ich konnte es aber auf folgendes reduzieren: a<(
Diese drei magischen Zeichen veranlassen Delphi dazu in einer schleife soviel Speicher zu allozieren, dass es knallt. Edith meinte gerade noch, dass hier auch nen W7 x64 werkelt. |
AW: Na, schon Delphi XE gekauft?
[QUOTE=himitsu;1046630
Wer so "alt" ist, der hat auch schon (fast) die 16-nach-32-Bit-Umstellung mitgemacht ... und genau dann hätte man sich denken können, daß es irgendwann mal weitergehen kann :zwinker: [/QUOTE] Die Umstellung hab ich ziemlich schnell mitbekommen und ich habe mir mit long... weitergeholfen. Ich kann mich übrigens noch an die 8Bit-Zeiten erinnern, Da gab es allerdings schon 8 und 16Bit Typen parallel. Und letztendlich laufen doch die meisten von uns irgendeinem Guru hinterher, der genau weiß was die Zukunft bringt (mich eingeschlossen). Warum zum Teufel gibt es eigentlich keine Word16, word32, word64 usw. Dann wäre dieses Long/Short/wasweisichcardinal Jonglieren überhaupt nicht notwendig! Gruß K-H |
AW: Na, schon Delphi XE gekauft?
Zitat:
Zitat:
Falls das nötig werden sollte : man freue sich der neuen eigenen Compiler-Schalter und $IFDEF's an jeder Ecke. :lol:
Delphi-Quellcode:
Würde ja theoretisch auch so in der Richtung gehen, aber ist das wirklich gut ? Ich sage : integer hat eben jetzt 4 Byte und fertig. Wer grössere Zahlen braucht, der kriegt eben neue Typen. Was ich übrigens noch nirgendwo gesehen habe : wie siehts mit Datensicherung aus ? Wenn ich eine Datei mit den jetztigen smallint-Zahlen habe, Milliarden Messwerte (Anzahl, nicht Wert!!) etc. was nützen mich da 64 Bit integer ? Damit diese Datei nicht unnötig aufgebläht wird, muss ich das Programm von Hand auf smallint umbauen. Neucompilieren alleine reicht dann nicht mehr !
(*$DEFINE My32BitProg*)
(*$IFDEF My16BitProg*) MyInt = smallint; (*$ELSE*) (*$IFDEF My32BitProg*) MyInt = integer; // unter 64 Bit-Win überhaupt noch integer richtig ? (*$ELSE*) (*$IFDEF My64BitProg*) MyInt = ??? (*$ENDIF*) |
AW: Na, schon Delphi XE gekauft?
Short (8), Small (16), Long (32) und LongLong/Double/Large (64)
so schwer ist es nun auch nicht :stupid: |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Warum ersetzt ihr nicht einfach per Search & Replace alle "Integer" durch "LongInt", wenn ihr geschlampt und generische an Stelle von fixen Typen verwendet habt? Wo ist das Problem?
Viel schwieriger haben es doch die, die ihren Code bereits darauf ausgelegt haben, dass Integer mitwächst (so wie es seit Jahren in der Hilfe steht): Denn wenn Integer jetzt NICHT mitwächst, müssen die ihren GESAMTEN Code ERNEUT durchforsten und schauen, wo ein mitwachsender Typ gebraucht wird und wo nicht. Warum sollen jetzt die, die es richtig gemacht haben unter der Schlamperei der anderen leiden? |
AW: Na, schon Delphi XE gekauft?
Zitat:
Sherlock |
AW: Na, schon Delphi XE gekauft?
Das ist seit D1 so.
Kurze Strings -> ShortString (alter Pascalstring) Längere Strings -> AnsiString (klassischer Delphistring als Zeiger auf Speicherbereich) |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
@gammatester: OK, dann isses eben seit D2 so.
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
In einigen Spielekonsolen sind wir schon seit Jahren über die 64 Bit hinaus, also könnte/wird dieses bestimmt auch irgendwann in den PCs Einzug halten. Wenn die PCs dann mal 128/256 Bit haben werden (PS: Die Grafikkarten machen das doch anscheinend schon, und immer mehr Programmierer verschieben schon einige Berechnungen in die GPU), dann wird Delphi hoffentlich auch schon ein Weilchen 64-Bittig sein. |
AW: Na, schon Delphi XE gekauft?
Das mit dem String hat ja nichts mit 16/32Bit zu tun, sondern ob es der "alte" Pascalstring ist, bei dem an der ersten Stelle, die Länge stand und der deshalb nur maximal 255 Zeichen lamg sein konnte oder der in Delphi eingeführte "neue" String mit einer variablen Länge.
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Das Rätsel lüftet sich....? Du meinst im Quellcode-Editor? Du meinst im Adressfeld der Willkommens-Seite? Du meinst Layout-Feld? [...] |
AW: Na, schon Delphi XE gekauft?
Lass ich mir Heute wirklich alles aus der Nase ziehen? :stupid:
Im Quelltext-Editor. |
AW: Na, schon Delphi XE gekauft?
WOW..
Jetzt geht es aber a hier... Für mich gibt es ÜBERHAUPT keinen Grund einen bestehenden Datentypen zu ändern... Schon bei der Umstellung von String zu Longstring... Ich fand das als eine unverschämtheit! Aber wenigstens gabs es {H-} jede 2. Unit hat das noch... Neuer Datentypen neuer Name... Kann doch nicht so schwer sein... Das gleiche gilt für Routinen mit geänderter Parameterliste. Oder geänderte Type sage nur SearchRec... Aber das ist schnee von Gestern das hat man ja im laufe der Zeit umgebaut... Aber ich hatte gehoft das die schlauer werden... Kann mich gut noch an eine Road-Show erinnern. Der Aufmacher war glaube ich: "Schaut mal gleicher Sourcecode für Delphi 4 5 & 6..." Das waren noch Zeiten... Mavarik :coder: |
AW: Na, schon Delphi XE gekauft?
@Mavarik: Seit der Umstellung vom "ShortString" (früher String) auf AnsiString, wurde doch schon gesagt, daß der "neue" String ein generischer Typ ist.
Also war es auch Klar, das sich der String irgendwann mal ändern könnte und nur der AnsiString so bleibt, wie er ist. Es wurde also absolut kein "bestehender Datentyp" geändert. (seit D2 und in Bezug auf Integer/Real/Char) Von der Definition her ist der String immernoch generisch und er hatte sich intern an das Unicode angepaßt. Was wird nur passieren, wenn dann mal auf UCS4 umgestellt wird und der Char dann mal 4 Byte groß ist. :roll: Zitat:
Also wenn man die passenden/richtigen Datentypen verwendet hatte und nicht irgendwelche Pointeroperationen mit "falschen" Datengrößen verwendet. |
AW: Na, schon Delphi XE gekauft?
Beim Typ "String" ist die Arbeit bezüglich Portierung (für Codegear) einfacher wenn man String = Wide/Unicodestring nimmt.
Alle API in der Unicode-Win32API sind nunmal mit PWidechars statt PChars definiert. D.h. hätte man einen anderen Typ genommen hätte man alle WinApi-Bibliotheken (Windows.pas, ...) entsprechend anpassen müssen. Die Frage ist wieviel Code dadurch dann nicht mehr gegangen wäre ist auch offen. Bei Integer ist glaube ich das gleiche Problem. Wenn nun "der Rest der Welt" beim Sprung auf 64-Bit die länge von Integer gleich lässt müsste ebenfalls jede API-Funktion kontrolliert bzw. angepaßt werden. |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Oder beschwerst du dich auch, wenn dein X86 Inline-Assembler nicht funktioniert, wenn du hypothetischerweise irgendwann mal für's iPhone kompilieren willst? |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Real: Noch in Delphi 3 ist Real der 6-Byte-Type, der später mal wohl Real48(?) genannt wurde. Auch keine Änderung? Raider heißt jetzt twix, sonst keine Änderung. |
AW: Na, schon Delphi XE gekauft?
Delphi 1 ist zawr lange her, und in meiner Erinnerung wurde der neue Typ in D1 eingeführt, aber auch wenn es D2 war, seit da ist string ein generischer Typ
|
AW: Na, schon Delphi XE gekauft?
Ohmann....
Wir sollten ein WoW-Arenateam gründen, da kriegt man wenigstens Punkte dafür, wenn man sich gegenseitig zerfleischt :D |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Delphi 2007: Char = ein generischer Typ (da Ansi-Compiler > AnsiChar) Delphi 2009: Char = ein generischer Typ (da Unicode-Compiler > WideChar) Also da hat sich an seiner Definition absolut garnichts verändert. "Real48" war schon immer ein Fehler und dieser Fehler wurde dort gefixt. PS: String ist kompatibel zu PChar (seit Delphi 2) und an der PChar-Definition hat sie wohl noch nie was geändert. (also, seitdem man erkannt hat, daß 1-Byte zukünftig nicht mehr ausreichen wird und man irgendwann man upgraden muß) |
AW: Na, schon Delphi XE gekauft?
Och Leuts, was soll denn diese Wortklauberei?
Die Tatsache, dass ein Char seit Delphi 2009 mehr als 1 Byte belegt, war für viele Entwickler in ihrer Praxis eine signifikante Änderung. Dass dahinter am Ende immer noch ein "Zeichen" steht, ist natürlich korrekt, aber darum geht's doch hier gar nicht. Die Rechthaberei bringt uns hier nicht weiter. |
AW: Na, schon Delphi XE gekauft?
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Zitat:
Delphi-Quellcode:
zu
type char = ansichar;
Delphi-Quellcode:
Also hat sich neben der Semantik auch die Definition geändert.
type char = widechar;
Zitat:
|
AW: Na, schon Delphi XE gekauft?
Zitat:
Sherlock |
AW: Na, schon Delphi XE gekauft?
Zitat:
Erst wenn ich sie wieder eingebe dann geht der Speicherverbrauch plötzlich wieder runter auf den ursprünglichen Wert um dann sofort wieder hoch zu laufen. Ist schon seltsam... EDIT: die selbe Konfiguration, waas Windows und Delphi betrifft |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:29 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