0

I am a fairly experienced programmer in Java, and I am attempting to make the (somewhat painful) transition to C++. To do this I am looking for some interesting projects to work on. I am looking for stuff that would help give me experience with C++ libraries. For example, I recently wrote a simple program that would read a docx file and search it for a key word, and display the number of times it was repeated. This is the sort of project I am looking for, stuff that requires one to develop a working understanding of C++ libraries of data-types. Does anyone have any suggestions?

(Please don't suggest project Euler as I have already completed most of those problems.)

Thanks in advance.

daniel gratzer
  • 52,833
  • 11
  • 94
  • 134
  • "Please don't suggest project Euler as I have already completed most of those problems" - that's quite an achievement. – Mitch Wheat Dec 12 '11 at 06:45
  • Thank you, I devoted quite a bit of time to it, both in Java and C++ – daniel gratzer Dec 12 '11 at 06:46
  • 1
    @jozefg: You may want to take a look at [The Definitive C++ Book Guide and List](http://stackoverflow.com/questions/388242/the-definitive-c-book-guide-and-list) and pick up a book you feel is most appropriate for you. Those books do a good job covering what "modern C++" looks like and how you can use idioms like RAII to your advantage. – In silico Dec 12 '11 at 06:48
  • I believe the best ways to learn is picking something you want to make, and just start with it, using your knowledge of programming obtained from java and with a good reference book such as http://www.deitel.com/books/cpphtp4/ and the internet as a powerful source of information to stuff you can't find in the book – Armand Dec 12 '11 at 06:49
  • I'd love to buy a textbook, however I recently purchased my number theory textbook and am extremely low on funds. Hence I am merely looking for project ideas, not book suggestions. But I shall remember that book thank you. – daniel gratzer Dec 12 '11 at 06:54
  • I second @Insilico's recommendation. And I'd add that you might want to look at _Accelerated C++_. At just 250 pages it's not a tome, if you already know some C++ the steep learning curve shouldn't bother you, it's 100% correct (a very valid concern in a C++ book), and it teaches the safe programming idioms that ought to be taught nowadays (but, unfortunately, rarely is). – sbi Dec 12 '11 at 10:34

2 Answers2

2

Try to make a small game. It's fun and you learn a lot. Tetris is my favourite for that, I've implemented it in a number of languages and on a number of platforms.

Sebastiaan M
  • 5,775
  • 2
  • 27
  • 28
-1

I will give you the suggestions of areas you have to be strong if you want to be a c++ developer.

The areas you have to improve is

Garbage Collection - Freeing the memory is done by us.So we have to take care of this part.

Multithreading - Creating multi threaded program and try to use mutex,events,critical section everything into your program.So that you can understand the importance of OS concepts in C.

STL - Learn Templates and STL concepts.

MFC - Explore MFC Classes and try to use it in your program.

Learn All these stuffs and then pick some desktop applications like MSPaint and try to create the application like that and create all that MSPaint functionalities into your application.

Once You finish MSPaint application and try to implement additional features like photoshop functionalities.

These Project will give you a lot of experience in C++.

Karai
  • 298
  • 2
  • 6
  • 14
karthik
  • 17,453
  • 70
  • 78
  • 122