Übersetzung aus C++

Fragen zu allen anderen Programmiersprachen.
Little John

Beitrag von Little John »

edel hat geschrieben:Nein, warum? Wenn du in deinem Windows 16 bit Programm ueberall WORD
schreibst statt HWND, hast du aber eine Menge Arbeit vor dir, wenn du es
dann auch auf 32 bit laufen lassen moechtest :D
Ja, aber dadurch dass man zuvor WORD geschrieben hatte, hatte man es ja auch schon typisiert.

Gruß, Little John
Benutzeravatar
mk-soft
Beiträge: 3855
Registriert: 24.11.2004 13:12
Wohnort: Germany

Beitrag von mk-soft »

edel hat geschrieben: Den Fehler hab ich im uebrigen auch in einigen meiner Libs reingehauen,
unter 64 bit sind die Pointer nur 4 byte gross :oops:
:?:

Unter PB64 8 byte gross
Alles ist möglich, fragt sich nur wie...
Projekte ThreadToGUI / EventDesigner V3 / OOP-BaseClass-Modul
Downloads auf MyWebspace / OneDrive
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

mk-soft hat geschrieben:Unter PB64 8 byte gross
Hier schreibt aber keiner was von PB.
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Little John hat geschrieben:
edel hat geschrieben:Nein, warum? Wenn du in deinem Windows 16 bit Programm ueberall WORD
schreibst statt HWND, hast du aber eine Menge Arbeit vor dir, wenn du es
dann auch auf 32 bit laufen lassen moechtest :D
Ja, aber dadurch dass man zuvor WORD geschrieben hatte, hatte man es ja auch schon typisiert.

Gruß, Little John
Nur ist ein WORD immer ein WORD.
Ein HWND kann aber ein WORD, ein LONG, ein BYTE, ein QUAD, und auch eine FLOAT sein, Du brauchst nur eine einzige Zeile umzuschreiben.
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Little John

Beitrag von Little John »

ZeHa hat geschrieben:Nur ist ein WORD immer ein WORD.
Ein HWND kann aber ein WORD, ein LONG, ein BYTE, ein QUAD, und auch eine FLOAT sein, Du brauchst nur eine einzige Zeile umzuschreiben.
Das ist mir klar. Es geht also anscheinend nicht darum ob etwas typisiert ist oder nicht (weil das beispielsweise mit WORD ebenso wie mit HWND der Fall ist), sondern auf welche Weise etwas typisiert ist. Oder?

Gruß, Little John
Benutzeravatar
ZeHa
Beiträge: 4760
Registriert: 15.09.2004 23:57
Wohnort: Friedrichshafen
Kontaktdaten:

Beitrag von ZeHa »

Typisiert ist ja sowieso alles, anders geht's ja auch gar nicht. Aber unter C und C++ kann man eben sog. "Aliase" vergeben für bestimmte Typen, was zwar manchmal "overkill" sein kann, aber in vielen Fällen auch hilfreich ist. Und eine solche Typisierung läßt sich halt später sehr leicht ändern, weil man nur eine einzige Zeile austauschen muß (bspw. wenn man die Plattform wechselt oder einfach bemerkt, daß 16 Bit für einen Wert nicht ausreichen, etc). Zudem hilft es eben auch dabei, Fehler aufzufangen, weil der Compiler merkt, wenn man einen Wert von Typ A auf eine Variable von Typ B zuweisen will, ohne zu casten. Das sind so die essentiellen Punkte.

Und manche finden das halt sinnvoll, andere nicht, und ich bin der Meinung, daß es durchaus seine Daseinsberechtigung hat, sofern es halt auch entsprechend sinnvoll eingesetzt wird.
Bild     Bild

ZeHa hat bisher kein Danke erhalten.
Klicke hier, wenn Du wissen möchtest, woran ihm das vorbeigeht.
Little John

Beitrag von Little John »

ZeHa hat geschrieben:Typisiert ist ja sowieso alles, anders geht's ja auch gar nicht.
Ich hatte v.a. die vorangegangene Diskussion zwischen Dir und Fluid Byte so verstanden als ob es dabei v.a. darum ging, ob Typisierung nützlich ist oder nicht. Wenn es gar nicht ohne ginge, wäre es sinnlos solch eine Diskussion zu führen.
Und es geht durchaus ohne. Z.B. gibt es in Lua keine festen Typdefinitionen von Variablen. Folgendes ist funktionierender Lua-Code:

Code: Alles auswählen

a = 3
a = 4*a
print(a)            --> 12
a = "Hallo Welt!"   --> Hallo Welt!
print(a)
ZeHa hat geschrieben:Aber unter C und C++ kann man eben sog. "Aliase" vergeben für bestimmte Typen, was zwar manchmal "overkill" sein kann, aber in vielen Fällen auch hilfreich ist.
Über den Nutzen von Aliasen zu diskutieren ist IMHO etwas anderes als über den Nutzen von Typisierung.
Und ein Satz wie
Eine Typisierung ist sinnvoll um eine spätere änderung des Typeeigenschaften nicht in tausenden von Zeilen einzeln durchführen zu müssen.
ist enfach in sich unlogisch.
Jetzt nach Deinen Erläuterungen verstehe ich, dass er wahrscheinlich meinte: "Typisierung mit Hilfe von Aliasen ..."
ZeHa hat geschrieben:Und eine solche Typisierung läßt sich halt später sehr leicht ändern, weil man nur eine einzige Zeile austauschen muß (bspw. wenn man die Plattform wechselt oder einfach bemerkt, daß 16 Bit für einen Wert nicht ausreichen, etc).
Da bin ich völlig Deiner Ansicht, wie ich auch schon geschrieben hatte.
ZeHa hat geschrieben:Zudem hilft es eben auch dabei, Fehler aufzufangen, weil der Compiler merkt, wenn man einen Wert von Typ A auf eine Variable von Typ B zuweisen will, ohne zu casten. Das sind so die essentiellen Punkte.
Dito.

Gruß, Little John
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Es ging darum gleich die Standard Datentypen zu nutzen, ohne "Alias".
Antworten