
Ask HN: Project Ideas to Learn C++11 Features - koots
Hello,<p>I know C++03 and I want like to learn modern C++ features(at least C++11), but I always forget them with no practice.
Please recommend some mid size project ideas.
======
danbolt
I'm not sure what a good mid-size project would look like, but one thing that
really helped me was implementing structures/algorithms using C++11's
features. It aided in not just getting a feel for them, but also what finding
out features I liked and didn't.

An example might be implementing a linked-list or tree with `unique_ptr`,
while using conventional pointers for the doubly-linked `prev` part. The goal
being exploring the idea of ownership and automatic memory management.

Personally, the most helpful way I learned about using C++ was to try features
and hear which ones people liked/disliked and why. The discussion (and
sometimes drama!) made things more memorable.

~~~
koots
I see your point, but I want a project I can learn from and to add to my
portfolio.

~~~
danbolt
Perhaps a raytracer? Those are often performance-oriented and employ C++ so
the subject matter would be practical. A look into threading, memory
ownership, and tricks like `constexpr` could all be utilized.

~~~
koots
A ray tracer sounds good. Thank you.

------
jaldhar
Make a roguelike game. A basic one can be implemented in a couple of KLOC and
will make good use of STL, algorithms, and memory management. Best of all when
you are finished you will have a fun game to play!

The annual 7DRL challenge in which you have 7 days to make a roguelike is
starting next week. See [https://itch.io/jam/7drl-
challenge-2019](https://itch.io/jam/7drl-challenge-2019) for details.

~~~
koots
Sounds interesting, although I will not be able to join it this time.

But it seems that a game is my only option, although I was trying to think of
a non-game project, but I can't come up with another idea.

