[Okta Webinar] Learn how to a build a cloud-first strategyRegister Now


Where to start?

Posted on 2006-05-29
Medium Priority
Last Modified: 2010-05-18
Hello, Mircosoft was kind and posted me a copy of Visual Studio 2005 so,

Where should I start learning C++? or should I learn C?
Whats the main differences, adv/disadvantages of them both?
Can you recommend any websites, ebooks, books?
Your own comments?

Im looking for lots of information people :)

I already know Delphi (Pascal) and dont really have many problems reading c/cpp code.

Question by:-Karamja-

Assisted Solution

phuocnh earned 160 total points
ID: 16786545
If you must select between C++ or C. I think you should select C++.Why? C++ programming is OOP language and it was extended from C. So when you learn C++ you also learn C.
C is not an OOP language. If you are used to programming Delphi, I think you will be easy to catch C++.
I think you should start by reading some articles about comparison between Delphi (OOP Pascal) and C++ such as:
and mamy and many you can google them.
C is usually used when the system related problem is solved.
Why don't you learn C#, it is a modern language.
I started to learn C/C++/C# by example, my favorite site is The Code Project:
Best wishes to you
Phuoc H. Nguyen

LVL 16

Assisted Solution

PaulCaswell earned 160 total points
ID: 16786610
Hi -Karamja-,

Dont worry about it! In VS6 the C and C++ compilers are one and the same. Just learn to work with VS and you will learn both because by learning C++ you are also learning a lot of C.

I agree with Phuoc. Start with C++ and, if you ever have to, you will be able to write in C, you'll just have to learn what is NOT available in C.


Accepted Solution

e_tadeu earned 160 total points
ID: 16789494
Start with C++... although the C++ compilers also compile C, the programming style in both are a little different, and you can get confused if you mix both. E.g, C uses malloc() to get memory from the heap, while C++ uses the 'new' operator. C++ has object orientation, generic programming (templates), operator and function overloading, good encapsulation and a good library (the STL).

I recommend the books from Andrei Alexandrescu, Herb Sutter and the C++ father Bjarne Stroustrop. Some very good books:

* The C++ Programming Language (Special 3rd Edition) <-- The Bible!
* C++ Coding Standards : 101 Rules, Guidelines, and Best Practices
* Modern C++ Design: Generic Programming and Design Patterns Applied
* C++ Standard Template Library, The
* C++ Templates: The Complete Guide
* Effective C++ : 55 Specific Ways to Improve Your Programs and Designs
* Exceptional C++ Style : 40 New Engineering Puzzles, Programming Problems, and Solutions
* The C++ Standard Library : A Tutorial and Reference

You should also check the BOOST library, it is very good, very complete and very handy! ( www.boost.org )

Expert Comment

ID: 16789543
To learn very fast the language basics, follow a good tutorial and do some simple programs and examples.


Also, whenever you get a doubt about the language, check the C++ FAQ:


And the comp.lang.c++ newsgroup:


And of course, the experts-exchange =)

Don't forget: Start learning the STL and it's associated programming style as soon as possible! It is a very handy tool!

Author Comment

ID: 16789913
Thanks for your replies,

I will split the points, 40 each.

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Article by: SunnyDark
This article's goal is to present you with an easy to use XML wrapper for C++ and also present some interesting techniques that you might use with MS C++. The reason I built this class is to ease the pain of using XML files with C++, since there is…
Basic understanding on "OO- Object Orientation" is needed for designing a logical solution to solve a problem. Basic OOAD is a prerequisite for a coder to ensure that they follow the basic design of OO. This would help developers to understand the b…
The goal of the tutorial is to teach the user how to use functions in C++. The video will cover how to define functions, how to call functions and how to create functions prototypes. Microsoft Visual C++ 2010 Express will be used as a text editor an…
The viewer will be introduced to the technique of using vectors in C++. The video will cover how to define a vector, store values in the vector and retrieve data from the values stored in the vector.
Suggested Courses

872 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question