What kind of language is C++?

Have you ever heard of the programming language “C++”?
If you’ve heard of it, don’t you have the following questions?

  • We have C, C++, and C#. What’s the difference?
  • What can you do with C++?
  • To learn C++, don’t you need to learn C first?

In this article, we will explain in detail the programming language “C++”, from differences from C and C# to learning methods. After reading this article, all the above questions will be answered. If you are interested in C++, please read to the end!

1

Table of contents

  1. What is C++
  2. Three characteristics of C++
  3. Feature 1: A language that extends the functionality of the C language
  4. Feature 2: Enables advanced processing
  5. Feature 3: There are various versions
  6. How to learn C++ for beginners
  7. (Learning method) Is it necessary to study C language first?
  8. (Learning method) Recommended books for learning C++
  9. (Learning method) Recommended free sites for learning C++
  10. summary

What is C++

2

C++ is one of the general purpose programming languages. It is read as “Sea Plus Plus” and is sometimes called “Shee Pla” or “Sea La Pla”.

Simply put, it is the C language with various improvements including object-oriented programming. With improvements, it can be treated as a procedural programming language just like the old C language.

Three characteristics of C++

Here are three major features of C++.

  • Feature 1: A language that extends the functionality of the C language
  • Feature 2: Enables advanced processing
  • Feature 3: There are various versions

Feature 1: A language that extends the functionality of the C language

C++ is an extension of C language.
Since it is upwardly compatible with the C language, it is possible to do the same things as with the C language. For example, it is possible to access resources such as the OS, memory, and hardware, and to create applications like high-level languages.

C++ implements various extensions to the C language. For example:

  • Object-orientation
  • multiple inheritance
  • template
  • Function/operator overloading
  • Exception handling

In this way, C++ has a wide variety of functions and can implement advanced processing not found in other languages. Therefore, it is said that the degree of freedom is very high, and the language specification is said to be complicated.

Programs written in C can also be compiled in C++ (converting human-written source code into machine instructions). However, a program written in C++ cannot be compiled in C.

There is also a programming language with a similar name, C#. C# is an object-oriented programming language developed by Microsoft. However, since it is not compatible with C or C++, it can be said that it is a completely different language.

Feature 2: Enables advanced processing

C++ can achieve advanced processing. There are various services that actually use C++. Below is an example.

  • Applications (PC software, smartphone apps, etc.)
  • Large-scale business system
  • OS (operating system) such as Linux
  • Software that controls game consoles
  • IoT device software
  • Systems that require high-speed processing such as data analysis processing and statistics

One of the biggest features of C++ is that the execution speed of programs is much faster than other languages. This is because, as a low-level language for the lower layers, including C, which directly handles hardware, it is possible to generate programs that are extremely close to machine language that computers can understand.

Therefore, in systems that handle large amounts of data, such as data analysis processing and machine learning, high-speed processing is required, so C++ is often selected.

In addition, since C, the predecessor of C++, it has a track record of being used in large-scale systems for a long time, and it has high reliability due to the accumulation of many technologies and information.

By learning C++, it is possible to handle a wide range of applications, from many applications to advanced technologies such as IoT and data analysis.

Feature 3: There are various versions

C++ has a long history, and in 1979 the development of the programming language “C with Classes”, which is an advance of C++, was started. It was renamed to C++ in 1983, after which various improvements were made, and the first commercial release was made in October 1985.

Since then, C++11 was released as a major update in 2011, C++14 was released in 2014, and the latest version was C++17 released in 2017.

C++ has different functional aspects in each version, and various new features have been added in the latest C++17. If you are new to C++, we recommend starting with the latest version, C++17.

How to learn C++ for beginners

I will explain the following three points about learning C++.

  • Should I learn C language first?
  • Recommended books for learning C++
  • Best Free Sites to Learn C++

1

(Learning method) Is it necessary to study C language first?

In order to learn C++, don’t you need to learn C first? Some people think that. As conclusion, there is no such need. C++ has many parts that overlap with C, so as you study C++, you will also learn about C.

Rather, it is recommended that you study C ++ first because you do not know C language. C++ is object-oriented, which C does not have. If your goal is to learn C++, you should start learning C++ instead of C, in order to get used to C++-specific features.

However, some introductory books and seminars are intended for those who have some understanding of C language syntax and programming experience. For example, C++ is an extension of the C language, so common parts are omitted. If you want to use them, you need to study to some extent beforehand.

(Learning method) Recommended books for learning C++

Five Easy C++ 5th edition

It is a good book that has been loved for a long time as a book for beginners. Recommended as a self-study book.

This is a good book for understanding C++ syntax. A lot of sample sources are also posted, and you can proceed with your study while actually entering the program and checking the operation.

C++ picture book 2nd edition As

indicated by the title “picture book”, this book provides easy-to-understand explanations using conceptual diagrams and sample sources, and is recommended for those who are new to C++.

Note that this book is intended for those with some understanding of the C language, so if you don’t know the C language, you should learn it. To learn the C language, I recommend the “C picture book” of the same series.

Why create with object orientation 2nd edition

C++ and C language is that object-oriented language can be used. The concept of object orientation is not limited to C++, but is used in many programming languages ​​such as Java, Ruby, and Python.

This book is very useful for understanding object-orientation itself and the merits of creating with object-orientation. This is a good book that I would recommend to many programmers, not just C++.

(Learning method) Recommended free sites for learning C++

Basics of the C++ language learned in a week

As the title suggests, this is a free site where you can learn the basics of C++ in a week. The content is decided for each day, so it’s also a point that it’s easy to study every day. There is also C language learning content on the same site, so even people with no knowledge or experience of C language can learn together.

C++ maniac

Although it is a very simple page, it is explained in an easy-to-understand manner even for beginners because “C++, which is considered to be a little difficult, is explained in such a simple way that it looks boring”. Recommended even if you have no programming experience.

summary

This article introduced the programming language C++.
Finally, let’s review three features of C++.

  • Feature 1: A language that extends the functionality of the C language
  • Feature 2: Enables advanced processing
  • Feature 3: There are various versions

C++ is a programming language worth learning. Why don’t you take this opportunity to learn the programming language “C++”?

Leave a Comment