 |
JLI Spieleprogrammierung
|
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
Sören JLI Master Trainee

Anmeldedatum: 26.07.2002 Beiträge: 647 Wohnort: Bonn Medaillen: Keine
|
Verfasst am: 11.12.2002, 12:45 Titel: |
|
|
Das Beispiel ist sehr interessant!
Aber warum hast du malloc/free benutzt und nicht new/delete? |
|
Nach oben |
|
 |
DarK Super JLI'ler

Anmeldedatum: 23.07.2002 Beiträge: 452 Wohnort: NRW Medaillen: Keine
|
Verfasst am: 11.12.2002, 14:13 Titel: |
|
|
hab mir das mal angekuckt , versteh auch einiges, aber die folgenden typen sagen mir nix, was machen die , wofür sind die?
Code: |
DWORD
HKEY
LPSTR //Kenn ich glaub ich von der CreateSurfaceforBitmap Funktion |
|
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 11.12.2002, 15:13 Titel: |
|
|
Ich habe früher mal mit C angefangen, und dort gab es kein new/delete, also reine Gewöhnungssache. Da malloc/free auch ein wenig schneller ist als new/delete (die intern nur malloc/free verwenden) ist es doch auch egal, oder?
DWORD, HKEY und LPSTR sind Teilweise bekannte Datentypen mit anderen Bezeichnern.
DWORD ist einfach nur unsigned long int, also ein 32-Bit-Integer-Datentyp
HKEY ist im prinzip auch nur ein DWORD, mit dem Unterschied, das ein gültiger HKEY ein geöffneten Hauptschlüssel repräsentiert.
LPSTR / LPCSTR ist einfach: char * / const char *
AFE-GmdG _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
Kampfhund Super JLI'ler
Alter: 42 Anmeldedatum: 20.07.2002 Beiträge: 408
Medaillen: Keine
|
Verfasst am: 11.12.2002, 15:28 Titel: |
|
|
Was bringt denn diese Neubenennung, wenn es doch nur alte datentypen sind? Führt doch eigentlich nur zu Verwirrung. |
|
Nach oben |
|
 |
Hazel JLI MVP


Alter: 40 Anmeldedatum: 19.07.2002 Beiträge: 1761
Medaillen: Keine
|
Verfasst am: 11.12.2002, 15:32 Titel: |
|
|
Das verbessert die Übersicht. Wenn man eine Variable vom Typ HKEY hat anstatt DWORD, weiß man sofort wofür sie gedacht ist. _________________ *click* Dabuu!?
Twitter: http://twitter.com/Ollie_R
|
|
Nach oben |
|
 |
Kampfhund Super JLI'ler
Alter: 42 Anmeldedatum: 20.07.2002 Beiträge: 408
Medaillen: Keine
|
Verfasst am: 11.12.2002, 15:58 Titel: |
|
|
Ich finde es nicht besonders übersichtlich. DWORD sagt doch auch nicht viel aus, kann man schließlich für vieles verwenden. Ich finde diese ganzen "neuen" typen machen alles viel undurchsichtiger. Meiner Meinung nach sollte man die Variablen selber so benennen, dass man weiß wofür sie gedacht sind.
Wenn eine Variable vom typ HKEY ist kann ich damit nicht viel anfangen, da ich nichts genaues über ihn weiß(ok, manches kann man sich denken), ist es int oder ne struktur oder vileicht ein string?
Aber vileicht gibts ja noch andere Argumente für neue Typen. |
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 11.12.2002, 16:26 Titel: |
|
|
DWORD oder auch HKEY sind Datentypen, die Automatisch zur verfügung gestellt werden, wenn man windows.h includet. DWORD bedeutet soviel wie Double Word. ein Word ist ein 16-Bit-Integer, das Unsigned ist - und das schon immer. Windows hatte diese Philosophie schon zu 3.0-Zeiten genutzt. WORD, DWORD und QWORD (Quad-Word, 64-Bit) sind Datentypen, die man verwenden sollte, wenn man mit Windows-Funktionen hantiert, die sie verlangen.
Ob HKEY nun ein Struct oder ein DWORD ist, kann dem benutzer im Prinzip auch egal sein, da man die Variable niemals selbst mit Werten belegt, oder aus Ihr werte ausließt - sie wird lediglich für die Verwendung mit Registry-Funktionen benötigt.
AFE-GmdG
PS.: Ich lege diese Diskusion in einen neuen Thread, ich will den Beispielcode-Thread nicht damit überlasten. _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
AFE-GmdG JLI MVP


Alter: 45 Anmeldedatum: 19.07.2002 Beiträge: 1374 Wohnort: Irgendwo im Universum... Medaillen: Keine
|
Verfasst am: 11.12.2002, 16:36 Titel: |
|
|
Kampfhund hat Folgendes geschrieben: | Ich finde es nicht besonders übersichtlich. DWORD sagt doch auch nicht viel aus, kann man schließlich für vieles verwenden. Ich finde diese ganzen "neuen" typen machen alles viel undurchsichtiger. Meiner Meinung nach sollte man die Variablen selber so benennen, dass man weiß wofür sie gedacht sind. |
Das ist sicherlich Geschmackssache. DWORD sagt einem nur, wieviel Bits das speichern kann, HKEY sagt einem aber WAS gespeichert wird.
Kampfhund hat Folgendes geschrieben: | Wenn eine Variable vom typ HKEY ist kann ich damit nicht viel anfangen, da ich nichts genaues über ihn weiß(ok, manches kann man sich denken), ist es int oder ne struktur oder vileicht ein string?
Aber vileicht gibts ja noch andere Argumente für neue Typen. |
Das liegt daran, dass du dich noch nicht damit beschäftigt hattest. Normalerweise verwendet man auch nur Typen die man kennt.
Man kann durchaus Characters(char) in Integers speichern. Nur Strings geht nicht, da diese ja Arrays sind, also sollten keine Probleme auftauchen. Wenn man sich garnicht sicher ist, guckt man sich einfach die Typendefinition an.
PS.: Diesen Beitrag hatte Hazel geschrieben, während ich den Thread geteilt hab. Deshalb hab ich ihn erneut im Richtigen Thread gepostet. _________________
CPP: | float o=0.075,h=1.5,T,r,O,l,I;int _,L=80,s=3200;main(){for(;s%L||
(h-=o,T= -2),s;4 -(r=O*O)<(l=I*I)|++ _==L&&write(1,(--s%L?_<(L)?--_
%6:6:7)+\"World! \\n\",1)&&(O=I=l=_=r=0,T+=o /2))O=I*2*O+h,I=l+T-r;} |
|
|
Nach oben |
|
 |
|
|
Du kannst keine Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum nicht antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen.
|
Powered by phpBB © 2001, 2005 phpBB Group Deutsche Übersetzung von phpBB.de
|