Topics to master in C++ before advandce to next level

Started by
13 comments, last by Serapth 11 years, 8 months ago
@Hodgman. I do agree. Some patterns do emerge and are intuitive. I certainly don't consult a book to determine which patterns to use for a given problem. Which patterns to use is something you get a feel for over time. Not everyone "thinks of" or stumbles across all patterns though, especially if they develop habits that mean they never head down a path to learn potentially more useful patterns.
www.ice-d.com
Advertisement
Hmm.. Does it really worth to learn all new C++11 features in order before advancing into creating games or other complexed applications? Thumbs up, though, for STL. I know it is very important in game programming and proramming in general.

Deltron Zero and Automator.


Followup question: where should I begin learning the more esoteric C++ stuff?


There are a few places. I would recommend checking out the C++ newsgroup comp.lang.c++.moderated (http://www.gotw.ca/resources/clcm.htm), there are always some crazy C++ topics going on in there, and I learn something everytime I read it.

Another set of books is the Essential C++ and Essential STL books, as they cover some basic things as well as overlooked things (such as the STL vector <bool> being specialized in its implementation (which is unlike the rest of the STL)).

Articles by Andrei Alexandrescu or Herb Sutter usually cover some advanced topics.

Also, if you are interested in esoteric template stuff, check out template metaprogramming examples implemented in C++. (http://www.codeproject.com/Articles/3743/A-gentle-introduction-to-Template-Metaprogramming)


it really worth to learn all new C++11 features in order before advancing into creating games or other complexed applications?


IMHO no. In fact, relying on C++ 11 features may prevent you from writing good cross-platform code as it is only supported by the newest compilers, and even then it seems implementations vary widely compared to implementation of older C++ features. Also, I haven't see much code that uses C++11 features. Honestly, you're better off not using it until you really have a lot of experience in programming and game creation. I would even turn to third party libraries such as Boost first which have a lot of C++11 functionality, but at the additional benefit that it is more portable.

BTW, I have been programming in C++ for 6+ years, and I have never needed C++11 type functionality. It has some really usefuly features, and I am getting into using them now mainly for specialized applications, but it certainly is not nessecary. I would never use it in open source software i would release to the publice. I would recommend getting in the habit of using smart pointers and the such, but unfortunately a lot of real production code doeesn't use these (at least that I've seen).

That's my opinion on C++ 11, but I welcome any opposing views!
OK. So can anyone give me best resource for learning STL after I finish with general C++?
And it is worth to learn C++ file handling if I will do all file handling in QT and so on. I think SDL have its own file handling.

Deltron Zero and Automator.


OK. So can anyone give me best resource for learning STL after I finish with general C++?
And it is worth to learn C++ file handling if I will do all file handling in QT and so on. I think SDL have its own file handling.


C++ file handling is virtually identically to string console handling, so you will get that as a freebie.

I would consider picking up a book at that point personally.

This topic is closed to new replies.

Advertisement