Tips to accelerate your C++ knowledge?

I have been learning C++ for 3 months and I do not know if I understand if I know the language like I am suppose to. How do you know if you are okay with C++? I am right now learning polymorphism and I Semi understand it right now. I just do not know if I am working hard enough. I am currently on vacation so I have a lot of time to work on C++ I work from 12:00 to 2:00 reading the cplusplus tutorial then 3:00 to 6:00 making projects testing my skills and learning other small skills like GUI , I/O with files etc. Any tips that can accelerate my C++ knowledge would be greatly appreciated.
Last edited on
programming specially with C++ like the ocean !! i do programming for 8 years just with C++ but sometime i read or see very bizarre for me :)) and i be very wonderful ! for first read important book and famous such as herbert schildt , P.J Plaunger , ... and then repeat them . this is very important that repeat them , again and again ! until stick in your mind
Last edited on
Speaking as a developer who had worked for 13+ years, depending on your aptitude, it maybe more worth-while for you to dabble in multiple programming languages than just stick to one. Reason being employers may feel you are more value for monies to help them maintain various in-house systems built using different programming language isn't it ?

Of cuz, for some employers, they are looking for dedicated skill-set developers so this is where you find yourself fitting their needs. However, from my point of view, learning multiple programming languages enable me to reach further and also to learn different languages features and pitfalls. Life hence become much more interesting :)
tnx @sohguanh plz explain more !! i really want know . i just work on C++ and be expert on ! but some times i think is better i work in more than one . i decide learn java because C++ and java is popular language in the word . C++ is very very powerfull language my question is have C++ any place in the world for company ? how old are you ? do you work in company ? please tell me more
From my own view, the creation of Java has over-taken C++ in a lot of business applications for the simple fact it is more "manage-able" as "raw pointers and other low level stuff etc" are all hidden away from Java developers. The JVM will do those arithmetic and low level manipulation under the hood.

However C++ will still have a place in niche systems that demand a high level of performance which I feel Java is still *not* yet reach but coming soon. Another would be doing legacy C/C++ program maintenance as some employers do not want to start from scratch their old systems they have been using for so many years. Then of cuz the more popular would be intensive games programming which is still C/C++ dominant.

Conclusion. You want to focus on C++ you either do niche systems development, maintain legacy systems or do games development. All other business-centric systems are nowadays done in Java,Perl,PHP,Python etc. They are more "manage-able" so as to speak.

it maybe more worth-while for you to dabble in multiple programming languages than just stick to one

+1 for this - I mainly program in the three C's (C, C++ and Objective-C) along with Visual Basic for work plus a smattering of scripting stuff and I find that solving a problem in one leads to a greater understanding of the others. I was stumped with C++ vectors and iterators until I used Objective-C's NSMutableArray and then they made perfect sense!

@TheMassiveChipmunk, I like your schedule! Have you tried writing a complete and useful (to you) project as well as focussing on discrete parts of the language? I remember spending (what seemed like) months on pointers, just pointers and nothing else; I found that a different approach - writing a useful program - meant that my understanding increased immensely, in spite of (or indeed because of) the mistakes along the way. In one case, I needed to reformat a file that was exported from one of our systems that was full of extra end-of-lines characters; we were using a word macro to clean it up, took about 20 minutes per file. I wrote a program in c that used file pointers, functions with arguments passed by reference and various loops and ifs and now the same job takes about 1.5 seconds plus I got a solid education in pointers.

Just keep plugging away :-)

In one case, I needed to reformat a file that was exported from one of our systems that was full of extra end-of-lines characters; we were using a word macro to clean it up, took about 20 minutes per file. I wrote a program in c that used file pointers, functions with arguments passed by reference and various loops and ifs and now the same job takes about 1.5 seconds plus I got a solid education in pointers.


Actually if given the task to me, I would whip out a Perl script to do the same task in at least half the time you take to develop in C with acceptable run-time timing. Maybe not 1.5 seconds but even at 3 seconds it is quite acceptable.

I usually don't resort to C/C++ unless the situation calls for it. Perl is well known for being fast in processing text files with various regular expression and pattern matching.
how about .NET ?!! we can write windows application with C++/clr and C# ! of course i use clr :D
your idea is , i must learn java ? can you help me how ? introduce to me the best of java compiler or java IDE . i really want learn java but i still believe , c++ is the power full language and stronger than java
Anything was better than 20 minutes; and in terms of development time, you're spot on, probably took around 2 hours start to finish; similar thing in Perl would be, what, 15 minutes? Well, for you - I'd have to learn it first ;-) I may just have a crack at that to compare process times...

But we digress. It goes to prove our point that the multiple language approach has much merit, both practical and intellectual.

Addendum: my book recommendation for C++: http://www.amazon.co.uk/Programming-Principles-Practice-Developers-Library/dp/0321543726/ref=sr_1_2?ie=UTF8&qid=1312377832&sr=8-2
Last edited on
Topic archived. No new replies allowed.