Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

1

09.08.2017, 11:09

Modernes C++ / OOP

Hallo Leute,

ich habe vor die TriBase von Grund auf zu erneuern und eine PhysikEngine hinzuzufügen sowie einen kleinen Editor, der dir so manche Arbeit beim Programmieren abnimmt. Aber ganz am Anfang möchte ich die TriBase auf C++17 Standards bringen. Leider habe ich C++ mit Heiko Kalistas Buch aus dem Jahr 2012 gelernt, also hab ich nicht wirklich Erfahrung mit modernem C++. Auch OOP fällt mir relativ schwer.

Es würde mir reichen, wenn ihr mir ein paar Begriffe zum Thema "modernes C++" gebt. Hilfreich wären vielleicht auch Seiten die sich mit diesem Thema auseinandersetzen (oder vielleicht Tutorials).

Von folgenden Begriffen habe ich schon gehört, und habe schon dazu recherchiert:
- C++ Standrad Library (Container, Iteratoren...)
- nullptr
- auto (Automatische erkennung des Typs)

PS: Englisch ist kein Problem, ich bevorzuge aber Deutsch.
Albert Einstein sagte: "2 Stunden mit einem netten Mädchen fühlen sich an wie 20 Minuten, 20 Minuten auf einem heißen Ofen fühlen sich an wie 2 Stunden. - Das ist Relativität"

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »Patrick Z.« (10.08.2017, 18:25)


2

09.08.2017, 11:35

Von C++17 würde ich noch die Finger lassen, da die meisten Compiler sicherlich noch gar keine Unterstützung für die neuen Features bieten. C++14 sollte vollkommen ausreichen.

C++ Standard Library ist jetzt auch kein neues "Feature", deswegen ein seltsames Schlagwort.

Allerdings, hier mal ein paar Dinge, die mit C++11 oder später dazu gekommen sind:

- move semantik
- lambdas
- auto
- smart pointer (std::shared_ptr, std::unique_ptr, NICHT!! std::auto_ptr!!)
- std::array
- variadic templates
- constexpr
- std::optional (oder kommt das erst mit 17?)

Das sollte erstmal reichen um dich ein paar Wochen auf trapp zu halten.

mfg ;)

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »anti-freak« (09.08.2017, 11:49)


3

09.08.2017, 11:41

Danke.

Ich habe die C++ Standard Library dazu genommen, weil ich erst vor kurzem davon gehört habe, und es nicht im Buch von Heiko Kalista erwähnt wurde.
Albert Einstein sagte: "2 Stunden mit einem netten Mädchen fühlen sich an wie 20 Minuten, 20 Minuten auf einem heißen Ofen fühlen sich an wie 2 Stunden. - Das ist Relativität"

4

09.08.2017, 11:48

Erwähnt wurde die Sicherlich. Alles was im namespace std ist, gehört zur Standard Library. Z.B. std::cout, std::cin, std::vector, etc.

5

09.08.2017, 11:54

Die Elemente wurden schon erklärt, aber es wurde nie darauf Eingegangen, was alles genau zur Standard Library gehört.
Albert Einstein sagte: "2 Stunden mit einem netten Mädchen fühlen sich an wie 20 Minuten, 20 Minuten auf einem heißen Ofen fühlen sich an wie 2 Stunden. - Das ist Relativität"

Legend

Alter Hase

Beiträge: 731

Beruf: Softwareentwickler

  • Private Nachricht senden

6

09.08.2017, 13:39

Du kannst den C++ Modernizr ausprobieren, bevor du mit der ausführlichen Liste von anti-freak anfängst: http://codergears.com/Blog/?p=1566
"Wir müssen uns auf unsere Kernkompetenzen konzentrieren!" - "Juhu, wir machen eine Farm auf!"

Netzwerkbibliothek von mir, C#, LGPL: https://sourceforge.net/projects/statetransmitt/

7

09.08.2017, 15:04

Ich werds mal ausprobieren, aber ich glaube nicht, dass eine Maschine den Code der TriBase um so viel verbessern kann und zum Teil muss auch die Art und Weise, wie die TriBase so manches macht, erneuert werden (siehe hier)

Außerdem möchte ich mich auch fortbilden.
Albert Einstein sagte: "2 Stunden mit einem netten Mädchen fühlen sich an wie 20 Minuten, 20 Minuten auf einem heißen Ofen fühlen sich an wie 2 Stunden. - Das ist Relativität"

8

09.08.2017, 20:50

Es wäre auch sehr toll wenn mir jemand "perfekten" Code zeigen könnte.
Albert Einstein sagte: "2 Stunden mit einem netten Mädchen fühlen sich an wie 20 Minuten, 20 Minuten auf einem heißen Ofen fühlen sich an wie 2 Stunden. - Das ist Relativität"

Nimelrian

Alter Hase

Beiträge: 1 216

Beruf: Softwareentwickler (aktuell Web/Node); Freiberuflicher Google Proxy

  • Private Nachricht senden

9

09.08.2017, 20:55


Ich bin kein UserSideGoogleProxy. Und nein, dieses Forum ist kein UserSideGoogleProxyAbstractFactorySingleton.

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »Nimelrian« (09.08.2017, 23:19)


Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

10

09.08.2017, 20:56

Es wäre auch sehr toll wenn mir jemand "perfekten" Code zeigen könnte.

Das ist sehr schwierig. Du kannst dir halt fremden Code ansehen und versuchen davon zu lernen. Vielleicht einfach mal bei Github und Co nach Projekten suchen. Und ansonsten hilft es wenn du selbst viel entwickelst und vielleicht das ein oder andere Buch zu dem Thema liest. Wenn du bis jetzt nur das Buch von Heiko gelesen hast wäre es vielleicht an der Zeit darauf aufzubauen. Beispielsweise wird in Die C++ Programmiersprache zumindest C++ 11 verwendet. Es gibt aber auch andere Bücher die helfen können. Wenn du ein wenig im Internet stöberst findest du sicherlich auch die ein oder andere Quelle.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

Werbeanzeige