Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
FH Super JLI'ler
Alter: 36 Anmeldedatum: 16.10.2004 Beiträge: 438
Medaillen: Keine
|
Verfasst am: 21.12.2004, 14:46 Titel: Definition reinterpret |
|
|
Wie definiere ich eine reinterpret-Fnktion? Das sieht für mich wie ein Template aus. Daher könnte man wohl auch fragen, wie schreibe ich ein Template? Das würde mich sowieso mal interessieren.
Gruß
FH _________________ goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 21.12.2004, 21:35 Titel: |
|
|
Zu Templates:
Code: | template <class template_name>
class CLASS
{
template_name cMember;
}; |
Code: | CLASS<int> integerclass;
int integer=5;
integerclass.cMember=integer; |
<edit>
Für Funktionen sieht das ziemlich gleich aus.
</edit>
Den Rest deiner Frage habe ich nicht ganz verstanden... _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet...
Zuletzt bearbeitet von The Lord of Programming am 21.12.2004, 21:50, insgesamt 2-mal bearbeitet |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 21.12.2004, 21:41 Titel: |
|
|
Redest Du von einem cast wie reinterpret_cast<type>(value) bzw. static_cast<type>(value) ?
Die kannste nicht verändern, eigene Templates kann man so anfertigen:
Code: | template <typename T> class vector
{
public:
union
{
struct { T x, y, z, w; };
struct { T r, g, b, a; };
struct { T values[4]; };
};
vector (void);
vector (T x_, T y_, T z_, T w_ = 1);
vector (const vector<T> &other);
~vector (void);
// Produkte:
__forceinline T dotProduct (const vector<T> &other);
__forceinline vector<T> crossProduct (const vector<T> &other) const;
...
|
The Lord of Programming
Interessante Methode Templates zu machen Nur mein Compiler frisst das nicht, ich frag mich auch gar net wieso _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 21.12.2004, 21:52 Titel: |
|
|
Patrick hat Folgendes geschrieben: | The Lord of Programming
Interessante Methode Templates zu machen Nur mein Compiler frisst das nicht, ich frag mich auch gar net wieso |
Oh...sry...
Das kommt davon, wenn man den Code schnell im Browser zusammenschribselt und in letzter Zeit wenig mit Templates gemacht hat
(Verbessert^^) _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 21.12.2004, 21:59 Titel: |
|
|
The Lord of Programming
Mal paar kleine Verbesserungen
Code: |
// typename oder class, schöner ist typename und T für type
template <typename T> class CLASS // Alles schön in eine Zeile :)
{
public: // Ja ja, haben wir was vergessen? *hihi*
T public_value;
private:
T value_; // private Member immer mit _ am Ende bezeichnen :)
}; |
Sieht a bissel besser aus _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
The Lord of Programming Living Legend
Alter: 37 Anmeldedatum: 14.03.2003 Beiträge: 3122
Medaillen: Keine
|
Verfasst am: 21.12.2004, 22:09 Titel: |
|
|
Ich weiß, dass man das auch standarisieren kann - aber es ist eben mein Stil
Das "template_name" habe ich nur zur Verdeutlichung hingeschrieben. Wenn man als Newbie so ein Stück Code hingeknallt bekommt, in dem ein "ein-Buchstaben"-Bezeichner nach dem anderen vorkommt, dann hilft es nicht gerade, den Code zu verstehen.
Das mit dem public hab ich auch wegen der Einfachkeit weggelassen.
PS: Aber wir müssen hier ja net über Programmierstile diskutieren...hauptsache, die Fragen werden beantwortet _________________ www.visualgamesentertainment.net
Current projects: RDTDC(1), JLI-Vor-Projekt, Tetris(-Tutorial), JLI-Format
(1) Realtime Developer Testing and Debugging Console
Anschlag, Anleitung zum Atombombenbau, Sprengkörper...
Hilf Schäuble! Damit er auch was findet... |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
|
Nach oben |
|
|
FH Super JLI'ler
Alter: 36 Anmeldedatum: 16.10.2004 Beiträge: 438
Medaillen: Keine
|
Verfasst am: 22.12.2004, 12:32 Titel: |
|
|
Danke, wieder was gelernt.
Gruß und danke
FH _________________ goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free |
|
Nach oben |
|
|
xardias JLI Master
Alter: 38 Anmeldedatum: 28.12.2003 Beiträge: 804 Wohnort: Palo Alto, CA Medaillen: Keine
|
Verfasst am: 22.12.2004, 13:38 Titel: |
|
|
Um auf den programmierstil zurück zu kommen:
warum denn ein underscore ans ende von private membern? Ich seh den sinn darin nicht. Ich kenne es nur, dass underscores vor einen bezeichner gesetzt werden, wenn diese wirklich nur verwendet werden sollten, wenn man genau weiß was man tut ;], meistens weil dies public funktionen sind, die nur von einem bestimmten Manager oder so verwendet werden sollten. (Man kann auch friend benutzen, doch es gibt auch fälle in denen das nicht möglich ist).
Zurück zum underscore nach private variablen. wo liegt da der sinn? immerhin kann NUR diese klasse die variable verwenden, und ich wüsste nicht, wo es zu namenskonflikten kommen könnte, so dass es nötig wird.
PS: falls jemand meinen beitrag falsch interpretiert: ich will es einfach nur wissen, und nicht den Programmierstil oder sonstwas angreifen. |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 22.12.2004, 13:40 Titel: |
|
|
hat sich halt in vielen Codes durchgesetzt, darunter auch Codes von Scott Meyers, es gab im Internet mal ein Paper über das underscore bei private membern, wenn ichs nochmal finde poste ichs _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
Jonathan_Klein Living Legend
Alter: 37 Anmeldedatum: 17.02.2003 Beiträge: 3433 Wohnort: Siegerland Medaillen: Keine
|
Verfasst am: 22.12.2004, 13:45 Titel: |
|
|
also ich schreib immer
Code: |
class test
{
public
SetSpeed8Lfoat Speed);
float m_Speed;
}
test::SetSpeed(float Speed)
{
m_Speed=Speed;//da wäre ein Namsenkonflickt!
}
|
also statt Speed_ schreib ich m_Speed für my oder für Member kann sich jeder aussuchen... _________________ https://jonathank.de/games/ |
|
Nach oben |
|
|
Patrick Dark JLI Master
Anmeldedatum: 25.10.2004 Beiträge: 1895 Wohnort: Düren Medaillen: Keine
|
Verfasst am: 22.12.2004, 13:47 Titel: |
|
|
Jonathan_Klein
Naja das m_ kommt noch aus der Unagrischen Notation und die ist bekannterweise nicht sehr beliebt bei C++ Codern im C++ Code Genau wie das C bei Klassen _________________ 'Wer der Beste sein will muss nach Perfektion streben und jede Gelegenheit nutzen sich zu verbessern.' - KIA
[ German Game Dev | Boardsuche hilft sehr oft | Google rockt | Wie man Fragen richtig stellt | ICQ#: 143040199 ] |
|
Nach oben |
|
|
abc_d JLI Master Trainee
Alter: 34 Anmeldedatum: 27.01.2003 Beiträge: 615
Medaillen: Keine
|
Verfasst am: 22.12.2004, 16:37 Titel: |
|
|
Ja, und? Was jeder sagt muss stimmen?
Klar die Typzusätze fallen durch die eigenen Objekte in C++ weg, aber man kann sie trotzdem verwenden, damit bekommt man mehr Überblick über die standard-typ Variablen, ob man's verwendet darf jeder selbst entscheiden. _________________ http://mitglied.lycos.de/sarti/linuxisevil.gif Linux is evil - get the fact.
Never touch a running System - der Systemling |
|
Nach oben |
|
|
FH Super JLI'ler
Alter: 36 Anmeldedatum: 16.10.2004 Beiträge: 438
Medaillen: Keine
|
Verfasst am: 22.12.2004, 17:03 Titel: |
|
|
Wir sind cool!
Zitat: | Wir wollen nicht über Stils diskutieren...
Aber der Stil von XY ist scheiße...
Und ich wollte zu dem Stil YZ noch sagen: ... |
Ich sag nix mehr... Kommentarlos!
Gruß
FH _________________ goto work, send your kids to school
follow fashion, act normal
walk on the pavement, watch T.V.
save for your old age, obey the law
Repeat after me: I am free |
|
Nach oben |
|
|
|