Nepedia
Back to Discover
Advanced Reader
💻

C++

technology Maturity 7-9 war conflict Next article →

This article covers sensitive topics: war_conflict. Parents can manage visibility in Parental Controls.

C++ is a high-level, general-purpose programming language. It is a vital tool used to build complex software systems.

BjarneStroustrup
BjarneStroustrup

The language is designed to be both efficient and flexible. This means it can run very fast while still being easy for humans to organize. It is used for many different tasks in the modern world. These include building operating systems like Linux or Windows. It also powers desktop applications, video games, and web search engines.

ANSI ISO C++ WP
ANSI ISO C++ WP

To make a program work, C++ uses a process called compilation. A programmer writes code in a way that humans can read. Then, they use a tool called a compiler to translate that code. The compiler turns the human-readable code into machine instructions. This allows the computer hardware to execute the program directly. Many different companies provide these compilers. Some famous examples include Microsoft, Intel, IBM, and Oracle. This process ensures the software can run with high performance on various machines.

C++ is unique because it combines two different ways of working. First, it provides a direct mapping to hardware features. This comes from the older C language. It allows programmers to control a computer's memory and resources very closely. Second, it offers zero-overhead abstractions. An abstraction is a way to organize code into logical, manageable parts. This is often done through object-oriented programming (OOP). OOP allows programmers to group data and functions together into objects. This makes it much easier to manage very large and complex software projects.

BjarneStroustrup
BjarneStroustrup

The history of C++ began with Bjarne Stroustrup. He is a Danish computer scientist who worked at AT&T Bell Labs. In 1979, he began developing a predecessor called "C with Classes." Stroustrup wanted to solve a specific problem he found during his PhD studies. He noticed that the language Simula was great for organizing large projects but was too slow. Conversely, the language BCPL was very fast but too low-level for complex work. He decided to enhance the C language with features from Simula. This would create a tool that was both fast and organized.

By 1982, Stroustrup began developing the successor to "C with Classes." He eventually chose the name C++. The "++" symbol is the increment operator in the C language. This name signifies that the language is an evolution of C.

C++ Standards Committee meeting - July 1996 Stockholm - Wednesday general session
C++ Standards Committee meeting - July 1996 Stockholm - Wednesday general session

Early versions added features like virtual functions and operator overloading. In 1985, the first edition of "The C++ Programming Language" was released. This book served as the main reference before official standards existed. Later, the language added templates for generic programming and namespaces for better organization.

Today, the language is managed by the International Organization for Standardization (ISO). The first official standard, C++98, was released in 1998. Since then, the language has undergone many important updates. These include C++03, C++11, C++14, C++17, and C++20. In 2012, a new release schedule began. Now, a new standard is typically released every three years. The most recent version, C++23, was ratified in October 2024. The next major version will be C++26.

C++ is used in many critical and high-stakes environments. Because it allows manual memory management, it is very powerful. However, this requires programmers to be extremely careful. If they misuse memory, they can create bugs like buffer overflows. These bugs can lead to significant security risks. Despite this, the language remains incredibly popular. In December 2022, C++ ranked third on the TIOBE index. This was a major milestone as it surpassed Java for the first time.

20160121 CppFRUG Joel Falcou CppQuiz 3
20160121 CppFRUG Joel Falcou CppQuiz 3

It is a foundational part of our digital world.

596 words

Where will your curiosity go next?

Keep exploring at your chosen reading level.

🖼️ Images & Media (4)
File:BjarneStroustrup.jpg
BjarneStroustrup.jpg
File:20160121 CppFRUG Joel Falcou CppQuiz 3.jpg
20160121 CppFRUG Joel Falcou CppQuiz 3.jpg
File:C++ Standards Committee meeting - July 1996 Stockholm - Wednesday general session.jpg
C++ Standards Committee meeting - July...
File:ANSI ISO C++ WP.jpg
ANSI ISO C++ WP.jpg
More to explore

What is Nepedia?

A free, ad-free encyclopedia for children. Every article is written at five reading levels, so the same page works for a five-year-old and a fifteen-year-old — use the level switcher above to see this one change. No account needed to read.