AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Delphi-PRAXiS - Lounge Klatsch und Tratsch Alle Jahre (Monate) wieder... Zukunft von Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

Alle Jahre (Monate) wieder... Zukunft von Delphi

Ein Thema von Kathmai · begonnen am 4. Jan 2014 · letzter Beitrag vom 10. Jan 2014
Antwort Antwort
Seite 7 von 9   « Erste     567 89      
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.356 Beiträge
 
Delphi 11 Alexandria
 
#61

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 8. Jan 2014, 18:11
String ist ein virtueller Typ; wenn man einen bestimmten will muss man eine konkreten Stringtyp ( AnsiString, Unicodestring verwenden!
Wenn man sich denn hätte auf so etwas verlassen können, würde es Sinn machen seinen Code entsprechend zu schreiben. (Mache ich auch)
Das habe ich bei Integer aber auch gemacht... und dann kam 64-Bit und rumms, alles neu schreiben.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#62

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 8. Jan 2014, 20:14
Beim Integer haben sie sich nicht daran gehalten, obwohl Integer auch ein "virtueller" Typ war.
Darum schrieb ich ja, dass es in diesem Fall "ausnahmsweise" nicht an Delphi/EMBT liegt.
Das der Integertyp sicht mehr wächst und der geänderte Startindex beim String (nextgen) schon.
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#63

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 8. Jan 2014, 22:22
Beim Integer haben sie sich nicht daran gehalten, obwohl Integer auch ein "virtueller" Typ war.
Beim Integer hat man halt das gemacht was der Rest der Sprachen-Welt auch gemacht hat. Unter 64-Bit integer trotzdem bei 32-Bit gelassen.
Der Aufschrei/Ärger wäre größer wenn Delphi hier den eigen/eigentlich konsequenteren Weg gegangen wäre.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Furtbichler
(Gast)

n/a Beiträge
 
#64

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 06:24
Ganz ehrlich? Ich finde es generell ein no-go, wenn Datentypen in der Entwicklung einer Sprache ihren Aufbau ändern. Wieso hat man das bei 'Real' denn nicht auch gemacht? Nee, da wurde aus purem Zufall (FPU) der Datentyp Single,Double und Extended eingeführt (Gott-Sei-Dank). Und Boolean wurde auch so gelassen, stattdessen gibt es dann WordBool, LongBool.

Wieso war man bei Integer und String so dämlich? Na, Delphi eben. Und jetzt soll mir bloß keiner kommen, das das so sein musste. Musste es nicht. Es gibt für alles eine Lösung.
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.356 Beiträge
 
Delphi 11 Alexandria
 
#65

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 07:09
Ganz ehrlich? Ich finde es generell ein no-go, wenn Datentypen in der Entwicklung einer Sprache ihren Aufbau ändern.
Dafür sind es per Definition Metadatentypen, die per Definition keinen festen Aufbau haben.
Wenn man das braucht, gibt es ja entsprechend die Datentypen, deren Aufbau fest definiert ist.

Da das in der Liste der Datentypen auch eindeutig so definiert ist, hätte es damit eigentlich keine Probleme geben sollen. Das war selbst mir ziemlich am Anfang klar als ich mit Delphi angefangen habe. Ich habe zwar einiges falsch oder ungünstig gemacht und habe mich bei API Aufrufen etwas dumm angestellt (kann man in meinen ersten Posts von vor 10 Jahren vielleicht auch noch sehen ), aber das stand in der Hilfe und war damit auch klar.

Bei Ansi <--> Unicode hatte ich daher in meinen privaten Projekten so gut wie keinen Umstellungsaufwand. Nur bei Integer, wo die Vorgehensweise eben nicht der Dokumentation entsprach, musste ich Anpassungen machen.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#66

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 07:13
Wieso hat man das bei 'Real' denn nicht auch gemacht?
Hat man doch! Heute ist Real äquivalent zu Single, aber ursprünglich hatte Real ein anderes Format. Dieses kann man auch heute noch explizit verwenden, in Form von Real48. Aber weil es auf modernen Prozessoren langsam ist (würde mich nicht wundern, wenn es emuliert werden muss), ist es nicht mehr der Standard-Alias für Real.
  Mit Zitat antworten Zitat
Jumpy

Registriert seit: 9. Dez 2010
Ort: Mönchengladbach
1.733 Beiträge
 
Delphi 6 Enterprise
 
#67

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 07:53
Hallo,

nur mal aus Neugier, da ich noch nicht so lange dabei bin, das ich mal ein altes Projekt hätte umstellen müssen, bzw. das eine was ich von D6 auf D2010 umgestellt habe hat kaum Probleme gemacht:

Wo liegt denn das Problem bei den Strings oder Integern? Bzw. wann hätte man Probleme damit bekommen? Wenn man mit Pointern arbeitet oder so?

Delphi-Quellcode:
var s:String;
begin
  s:='blub';
  showmessage(s);
end;
wird ja wohl kaum Probleme machen.
Ralph
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.171 Beiträge
 
Delphi 10.4 Sydney
 
#68

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 08:07
Wieso war man bei Integer und String so dämlich? Na, Delphi eben.
MS hat es mit C genau so gemacht. Integer ist gewachen und auch unter 64-Windows ist der Integer jetzt 32-Bit lang. Na, Microsoft eben.
Und wie ist es mit CString in C++? 8 Bit wenn nicht Unicode und 16 Bit (hier geht man nicht darauf ein ob jetzt UCS-2 oder UTF-16 verwendet wird (man nimmt halt das was das OS nimmt, also NT: UTC-2 und danach UTF-16)
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.542 Beiträge
 
Delphi 11 Alexandria
 
#69

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 08:31
Wo liegt denn das Problem bei den Strings oder Integern?
http://docwiki.embarcadero.com/RADSt...icode_anpassen
Zitat:
Suchen Sie nach Quelltext, der:

davon ausgeht, dass SizeOf(Char) 1 ist.
davon ausgeht, dass die Länge (Length) eines Strings gleich der Byte-Anzahl in dem String ist.
Strings oder PChars direkt manipuliert.
Strings in oder aus einem persistenten Speicher liest oder schreibt.

Die beiden ersten Annahmen sind für Unicode nicht zutreffend, weil bei Unicode SizeOf(Char) größer als 1 Byte sein kann, und die Länge (Length) eines Strings doppelt so groß ist wie die Anzahl der Bytes. Darüber hinaus muss Code, der in einen persistenten Speicher schreibt oder daraus liest, gewährleisten, dass die korrekte Anzahl von Bytes geschrieben oder gelesen wird, da ein Zeichen evtl. nicht mehr durch ein einzelnes Byte repräsentiert werden kann.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.130 Beiträge
 
Delphi 10.3 Rio
 
#70

AW: Alle Jahre (Monate) wieder... Zukunft von Delphi

  Alt 9. Jan 2014, 09:07
Delphi-Quellcode:
var s:String;
begin
  s:='blub';
  showmessage(s);
end;
wird ja wohl kaum Probleme machen.
Ne aber ein

Delphi-Quellcode:
var
  S : Array [0..255] of Char;
  Name : Shortstring;
begin
  Name := 'Meine Mainformtitle'+#0;
  Move(Name[1],S[0],length(Name));
 ...
end;
schon...
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 9   « Erste     567 89      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:19 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz