Check out new amazing benefits of a PRO account!

C++ 16,131

C++ is a high-level object-oriented programming language developed at Bell Labs. C++ programming and learning from beginners to advanced tricks is now much easier with Our extensive collection of C++ videos, tutorials, and daily livestreams will help you to overcome any obstacle in learning and improving your C++ coding skills.

Introduction to C++ Programming Language

C++ is a high-level programming language designed by Bjarne Stroustrup in 1983. Key features of C++ include support for generic and object-oriented features. It is also imperative in nature and offers access to low-level memory manipulation. C++ is mostly used for system programming as it can be used for accessing hardware level instruction with low overhead. Its design is based on C and hence brings in the positive aspects of C with new features that perform above-average when it comes to real-time, resource critical applications. It is widely used by multiple organization around the world including Intel, FSF, IBM, Microsoft, etc. C++ is a compiled language and is considered hard language to learn and work with. There are plenty of programming tutorials available for C++ and helps anyone, to get started.

C++ History (Reference)

The history of C++ is rich. It started in 1979 when Branje Stroustrup started to improve C programming language. Initially, he named it “C with Classes,” but later changed it to C++. He was a computer scientist and has worked on many computer science problems in the past. He combined Simula and C features and created C++ as he did not find Simula fast enough. Most of his work is done in AT&T Bell Labs when working on distributed computing and Unix kernel. Other than C and Simula, there are other programming languages that influenced C++. They are Ada, ML, CLU and ALGOL 68.

Other key events in C++ history are as follows:
• The name is changed to C++ from "C with Classes" in 1983. During the change, new features such as type-safe storage allocation, references, constants, etc.
• The 2nd big change came in 1985 when C++ first edition was released. It was the first definite reference to the C++ language. Later the same year, official implementation is released for the audience.
• C++ 2.0 is released in 1989. It included many updates including static member, multiple inheritances, protected members, etc.
• The last big update was in 2011 with updates ranging from improvement in the library to adding new features.

Next updates are planned for 2017.

C++ Tools

If you want to get the most out of the C++ programming language, you need to use C++ tools. The tools mentioned below will help you deeply engage with the language. Below are the list of C++ tools that you can use. It includes GUI toolkits, IDE, libraries and much more.

  • Anjuta is free to use open source IDE for anyone who uses C++ and C. It can currently be used only on Gnome/GTK/Linux based operating systems.
  • CC386 Another great C++ IDE that offers 32-bit C compiler and IDE for both DOS and Windows.
  • Code::Blocks When it comes to using a full-fledged IDE, Code::Blocks is one of the best. It is available free of cost and comes under open source license. It can be used on both Windows and Linux operating system. Right now, it supports compilers such as MSVC++, GCC(MingW/Linux GCC), etc.
  • Zero Choosing a debugger is important for your work. Zero is a debugger that you will need for making sure that no errors creep in your code. It is modular in nature and offers full support for Linux. It also supports POSIX threads and x86_64 and x86 processors.
  • FLTK is a popular GUI toolkit for cross-platform GUI development. It works for Mac, Windows, and UNIX/Linux. Also, it comes with the support of OpenGL, 3D graphics and GLUT emulation.
  • Qt Want an alternative to FLTK? Check out the Qt, a popular C++ GUI framework. It also works in a cross-platform environment.
  • Visual Studio Community If you are working on Windows and want a full-fledged IDE, then Visual Studio Community is for you. It is free to use and comes with a bunch of developer tools to try out. It also enables you to connect with other Microsoft service easily.
  • Geany A simple yet powerful text editor, Geany can be your best friend when working on GTK+ toolkit. It comes with basic IDE feature-set so use it only when you are light on the requirement.
  • GTK+ A simple to use toolkit for developing GUI. It’s full form is GIMP toolkit and it offers a complete set of widgets, small one-off tools, and other application suites.

C++ Best Books

Even though doing projects can be a good idea, reading books can help you further refine your C++ knowledge. Concepts described in books let you work on much deeper concept. You can also work on different C++ projects described in the books below. We have provided books into three different categories: Beginner, Intermediate, and Advanced. Check them out below.

  • Book cover

    Jumping into C++

    by Alex Allain

    Want to learn to code? Want to learn C plus plus? Struggling to follow your lecturer or books and tutorials written for experts? You're not alone. As a professional C++ developer and former Harvard teaching fellow, I know what you need to know to be a great C++ programmer, and I know how to teach it, one step at a time. I know where people struggle, and why, and how to make it clear.

  • Book cover

    Learn C In A Day: The Ultimate Crash Course to Learning the Basics of C In No Time

    by Acodemy

    Do you want to learn C? In that case, you've come to the right place! Learning C is not an easy work if you don't have the RIGHT system. It requires time, money and desire. You must search an academy or a teacher, achieve coordination with them, or worse, adapt your own time to their class times. You also have to pay the high fees, month to month, and what is even more annoying is this: you will probably have to go to a special place in order to practice the C techniques! You see, when it comes to learning C we are ALL in the same game, and yet most people don't realize it.

  • Book cover

    C++ CRASH COURSE - Beginner's Course To Learn The Basics Of C++ Programming In 24 Hours!


    LThis “C++ Crash Course" is for you!.. a simple, practical course in which you'll learn everything you need to know about C++ programming!

    This book will take you into the process of learning the basics of C++ in simple steps.

    This book will show you the important data types that you need to know and will teach you how to use it.

    This book will teach you how to be more efficient in every repetitive task and avoid many of the most common errors.

  • Book cover

    C++ Common Knowledge: Essential Intermediate Programming

    by Stephen C. Dewhurst

    “We live in a time when, perhaps surprisingly, the best printed works on C++ are just now emerging. This is one of those works. Although C++ has been at the forefront of innovation and productivity in software development for more than two decades, it is only now being fully understood and utilized. This book is one of those rare contributions.”

  • Book cover

    Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and C++14

    by Scott Meyers

    The C++ standard library provides a set of common classes and interfaces that greatly extend the core C++ language. The library, however, is not self-explanatory. To make full use of its components–and to benefit from their power–you need a resource that does far more than list the classes and their functions.

  • Book cover

    The C++ Standard Library: A Tutorial and Reference / Edition 2

    by Nicolai M. Josuttis

    The C++ standard library provides a set of common classes and interfaces that greatly extend the core C++ language. The library, however, is not self-explanatory. To make full use of its components–and to benefit from their power–you need a resource that does far more than list the classes and their functions.

  • Book cover

    A Tour of C++

    by Bjarne Stroustroup

    The "tour" is a quick (about 180 pages) tutorial overview of all of standard C++ (language and standard library) at a moderately high level for people who already know C++ or at least are experienced programmers.

C++ Projects

We all know how C++ has propagated throughout the history of information technology. It is widely used by many companies and below we will discuss some major C++ projects. Check them out below.

Adobe Systems Have you ever used Adobe tools? If yes, then they are all coded in C++ programming language. The reason behind the choice is pure performance and as well all know editing requires a good amount of horsepower.

Explore this project!

Google is one of the leading companies in the world. They constantly use C++ in their work for the obvious reason of its performance and ability to write low-level function calls. Many Google products such as Chromium use C++ as a major technology. Google File system also uses C++.

Explore this project!

Mozilla Web browsers and email client are examples of sophisticated technology tool. At Mozilla, their email client Thunderbird and Firefox utilizes C++. Also, both of the software are open source in nature.

Explore this project!

MySQL is one of the leading database solution out there. With over 100 million downloads, the open source software has shown his true potential. Not to mention that it uses C++ to polish its magical features. MySQL is used by almost every web project and is common technology in big companies such as Google, Wikipedia, Yahoo, etc.

Explore this project!

Alias System – Autodesk Maya Autodesk popular software Maya 3D enables designers to take control of different aspects of graphical development. Maya 3D uses C++ to accomplish a lot of different tasks and ensure it works fast out of the box.

Explore this project!

12D Solutions CAD solutions uses C++ extensively. It is also true for 12D Solutions Pty Ltd, an Australian software developer specializing in surveying applications and civil engineering.

Explore this project!

Image Systems utilizes C++ to power their motion analysis programs. Their film scanner systems also utilize C++ extensively.

Explore this project!

Apple – OS X The popular Apple - OS X utilizes C++ at its core. Many Apple applications are completely written for performance using C++.

Explore this project!

C++ Community

There are tons of C++ communities that help foster the growth of the C++. C++ has many online forums and communities which provide comprehensive support and guidance. If you are looking for programming in C++, you can join the communities and get the best possible results.

C++ Gurus

  • Dr. Miri Ben-Nissan

    Branje Stroustrup

    Branje Stroustrup is the real hero behind the evolution of C++. He designed C++ at AT&T and help develop the future with his own hands. He is Danish computer scientist and holds Ph.D. in computer science.

    Branje Stroustrup Blog
  • Guy Soffer

    Guy Soffer is well known for his work in C++. He is a writer at 2eat and also works as a senior programmer at Duplicate Poker. He is also known for his debugging skills.

    Guy Soffer
  • Richard Hagedoorn

    Richard Hagedoorn

    is a respected C/C++ expert in the industry. He is from Netherlands and excels at his work in software field. He has done his education from Amsterdam University of Applied Sciences.

  • Alex Fogol

    Alex Fogol is a software developer who loves to work in C/C++. With tons of experience behind his belt, he has added value to the C++ community.

    Alex Fogol
  • Herb Sutter

    Herb Sutter

    Herb Sutter Started his career as a C++/CX guy and slowly became an expert in the field. He is known for contribution to Microsoft and has also written several books on different technologies including C++.

  • Andrei Alexandrescu

    Andrei Alexandrescu is a programmer and author who loves C++ to the core. His work revolves around template metaprogramming. He has also written a book Modern C++ Design which helps anyone to learn about software design and how to handle it.

    Andrei Alexandrescu

C++ Conferences


  • cppreference

    The most complete C/C++ reference out there. It includes references for the latest standard drafts.


    A more practical reference/tutorial for C++. Probably beginners will prefer this website over cppreference.

  • C++ tutorial

    Tutorial for the real beginners (ad-supported).

Error image

Sorry but your browser is out of date - please install a new browser such as Google Chrome